メインコンテンツへスキップ
Z

ヒープソート ビジュアライザー

ヒープソートのアルゴリズムをアニメーションで可視化。ステップ実行や速度調整、入力データのカスタマイズ、比較・交換回数のライブカウント、擬似コード表示に対応。ブラウザだけでその場に動かせます。

無料 登録不要 クライアントサイド プライバシーに配慮 Updated
/
Comparisons: Swaps / writes: Array accesses:

Code examples

Ready-to-copy reference implementations. Free to use in your own projects and assignments.

使い方

  1. 1 Playを押すと、配列がmaxヒープへと構築され、続いて最大値が順番に取り出されていく様子が再生されます。
  2. 2 Stepを使うと、sift-downの比較処理を1ステップずつ進められます。
  3. 3 Custom inputに任意の数値を入力し、Applyを押すと自分のデータで試せます。
  4. 4 ハイライトされる擬似コードと、リアルタイムの比較・交換回数を確認しながら進められます。

このツールを使う理由

  • 配列がどのようにバイナリヒープ(親はインデックスi、子は2i+1と2i+2)として扱われるかが分かります。
  • 最大値が末尾に移動するたびに、sift-downがヒープの性質をどう復元するかを観察できます。
  • ヒープソートがなぜ追加メモリO(1)だけでO(n log n)を保証できるのか理解できます。
  • すべてブラウザ内で完結します。登録もファイルのアップロードも不要です。

よくある質問

ヒープソートとは何ですか?

ヒープソートは、まず配列からmaxヒープを構築し、その後は根(最大値)を末尾と交換してsift-downでヒープの性質を復元する、という処理を繰り返すアルゴリズムです。これにより、配列の右側から徐々にソート済み領域が広がっていきます。

ヒープソートの時間計算量はどれくらいですか?

最良・平均・最悪のいずれの場合もO(n log n)です。ヒープの構築にO(n)かかり、n回の取り出し処理それぞれにO(log n)かかります。

ヒープソートは安定ソートですか?

いいえ、安定ソートではありません。ヒープ操作では離れた位置にある要素同士を交換するため、同じ値を持つ要素の相対的な順序が入れ替わることがあります。

ヒープソートとクイックソートはどう違いますか?

ヒープソートは最悪の場合でもO(n log n)を保証し、追加メモリもO(1)しか使いません。一方クイックソートは、キャッシュ局所性の良さや係数の小ささから、実際にはより高速に動作することが多いです。

ヒープソート ビジュアライザー とは?

ヒープソート ビジュアライザーは、ヒープソートのアルゴリズムをシミュレートするツールです。配列からmaxヒープを構築した後、根(root)の要素を末尾と交換してsift-down(下方移動)を行い、ヒープの性質を復元する処理を繰り返します。この過程を通じて、保証された計算量O(n log n)を、追加メモリO(1)だけで実現している様子を視覚的に確認できます。

概要

ヒープソート ビジュアライザー は Zerethon Tools が提供する無料の アルゴリズム ユーティリティです。ヒープソートのアルゴリズムをアニメーションで可視化。ステップ実行や速度調整、入力データのカスタマイズ、比較・交換回数のライブカウント、擬似コード表示に対応。ブラウザだけでその場に動かせます。. ブラウザ上で完全に動作します — 登録不要、アップロード不要。

カテゴリ
アルゴリズム
料金
無料
プライバシー
ブラウザベース
登録
不要

プライバシー

明記されない限り、データがブラウザの外に送信されることはありません。ヒープソート ビジュアライザー は完全にクライアント側で動作します — サーバーへのアップロードなし、ログなし、入力内容のトラッキングなし。

初めての方へ。Big-O 解析付きのステップバイステップ解説を読む: Sorting Algorithms を学ぶ →

比較

関連ツール

Zerethon Social で作成・共有・成長しよう

無料登録。ポイントを獲得し、実績を集め、世界中のクリエイターとつながりましょう。

Zerethon を無料で試す