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

選択ソート(Selection Sort)ビジュアライザー

ステップ実行、速度調整、カスタム入力、比較/交換回数のライブカウンター、擬似コードを備えたSelection Sortのアニメーション。すべてブラウザ内だけで完結します。

無料 登録不要 クライアントサイド プライバシーに配慮 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を押すと、各パスで最小値を探して正しい位置に交換していく様子を確認できます。
  2. 2 Stepを使うと、アルゴリズムが最小値を追跡しながら1回の比較ごとに処理を進められます。
  3. 3 Custom inputの欄に好きな数値を入力し、Applyを押してください。
  4. 4 ハイライトされる擬似コード(pseudocode)と、リアルタイムの比較/交換カウンターを見比べながら確認できます。

このツールを使う理由

  • 各パスで残りの要素から最小値が選ばれ、先頭に配置される様子を確認できます。
  • 入力データの並び順に関係なく、比較回数が常に同じになることがわかります。
  • 書き込みコストが高い場面で役立つ、交換回数が最大n−1回に抑えられる理由をカウンターで確認できます。
  • すべてブラウザ内で完結。登録もアップロードも不要です。

よくある質問

選択ソート(Selection Sort)とは何ですか?

選択ソートは配列を「整列済み」と「未整列」の2つの部分に分け、各パスで未整列部分をスキャンして最小値を見つけ、それを境界位置と交換していくアルゴリズムです。

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

最良・平均・最悪のすべてのケースでO(n²)です。最小値を探すために毎回残り全ての要素をスキャンする必要があるためです。

選択ソートは安定(stable)なソートですか?

いいえ、安定ではありません。離れた位置にある最小値を交換する際に、同じ値を持つ要素同士の相対的な順序が入れ替わってしまうことがあります。ただし、連結リスト(linked-list)を用いた変種では安定にすることも可能です。

選択ソートはどんな場面で役立ちますか?

書き込み回数を最小限に抑えたい場合に有効です。交換回数は最大でもn−1回で済み、バブルソートよりずっと少なくなります。それ以外の場面では、一般的に挿入ソートの方が好まれます。

選択ソート(Selection Sort)ビジュアライザー とは?

選択ソート(Selection Sort)ビジュアライザーは、未整列部分から最小値を繰り返し探し出し、それを境界位置と交換していくSelection Sortの動作をシミュレートするツールです。常にO(n²)回の比較が必要になる一方で、交換回数は最大でもn−1回に抑えられる理由が視覚的にわかります。

機能

ステップごとのアニメーション

各パスで最小値が見つかり、先頭に交換される様子を確認できます。

計算量

時間計算量: すべてのケースでO(n²)。空間計算量: O(1)。インプレースだが安定ではない。交換回数はO(n)のみ。

100%プライベート

すべてブラウザ内で完結し、何もアップロードされません。

Input

[64, 25, 12, 22]

Output

select 12 → [12,25,64,22]; 22 → [12,22,64,25]; 25 → [12,22,25,64] (sorted)

主な用途

  1. 1

    選択ロジックを学ぶ

    入力に関係なく比較回数が常に~n²/2に固定される理由を確認します。

  2. 2

    書き込みを最小化する

    交換・書き込みのコストが高い場合に選択ソートが役立つ理由を理解します。

  3. 3

    挿入ソートとの比較

    固定のO(n²)と挿入ソートの最良ケースO(n)を比較します。

概要

Zerethonの選択ソート可視化ツールは、ブラウザ上でアルゴリズムをアニメーション表示し、未ソート領域の最小値を繰り返し選び出して正しい位置に交換します。選択ソートは常にO(n²)の時間で実行され(最良・平均・最悪のいずれも同じ)、追加空間はO(1)です。インプレースですが安定ではありません。交換回数はO(n)に抑えられます。

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

参考文献

プライバシー

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

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

関連ツール

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

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

Zerethon を無料で試す