何となく作ってみた。 バブルソートの可視化を。 だいたい70%くらいPENです。 数あるソートアルゴリズムの中でもすごくシンプルなバブルソートです。 交換したときの音もつけてみました。 「START」でソートを実行します。 「データ数変更」で、ソートするデータの要素の数を変更します。多くし過ぎるとソートするのにより多くの時間がかかります。デフォルトは10です。 「処理速度の調整」で、一秒間に何回入れ替えするかを指定します。Scratchの場合、一秒間に反復で処理できるプログラムが30回までなので、30以上を入力しても、一秒間に30回までしか処理できません。デフォルトは3です。 「音の有無」でソート時の音の有無を切り替えられます。デフォルトは音ONです。音を聞く事でどの位置にあるデータがどの時に交換されているのかを直感的に理解できる...かもしれません。この効果はデータ量が多くて処理速度が速いほどわかりやすいかもしれません。 もし処理速度を30より大きくして実行したいなら、動作速度は不安定だけどターボモードを使うのをお勧めします。(それかTurboWarp使うか) 「データを読ませる」で、ソートさせるデータを設定させる事が出来ます。その場合、中を見るからデータを読み込ませる作業が必要です。データの量は後で集計してくれるので「データ数変更」をクリックして追加の作業をする必要はありません。その読み込ませたデータを「START」からソートさせるには、右下にあるスライダーの値を1に変えてください。0だとランダムなデータが作成されてそれがソートされます。 「バブルソートについての解説」をクリックするとバブルソートについての解説が一応見れます。
Whyプログラミングの番組の中でも、バブルソートとほぼ同じアルゴリズムが紹介されてました。 次作のシェーカーはこれ https://scratch.mit.edu/projects/1352336672/ バブルソートってソートしてる時の棒の動きが泡のようだったからバブルソートっていう名前が付いたらしいよ