最近,CS系の基礎教養がないと自覚しアルゴリズムとデータ構造の勉強をしています.
まずはソートからです.
さて,私の後輩がこんな記事(ソートをC++で作って速度比較してみた。)をQiitaにあげています.
いい記事ですね!
いろいろなソートがあり,速度・安定性・消費メモリ・条件など性質が異なり,とても面白いです.
そんなソートを見たいと思い,pythonで可視化してみました.
Bubble Sort
まずは,バブルソートです.
泡のようにぽこぽこ動くのはかわいいです.
が,おそい!おそすぎる!!
Selection Sort
選択ソートです.
未ソート部分から,最小値を取って並べます.
個人的には一番直感的にコーディング可能なソートです.
最後加速していく感じ!
Insert Sort
挿入ソートです.
1つずつ整列させていくソートです.
人がトランプの手札を並べるときのようです.
ほぼ整列している場合,めちゃはやくなる面白いソート!
Shell Sort
シェルソート.
挿入ソートの上位版です.
いっぱい動いてびっくり!
Quick Sort
クイックソートです.
有名ですね.
Merge Sort
マージソートです.
一番見てて面白いかも!
あとがき
見るだけでなんとなく面白いですね.
実装したいソートがあったら順次追加していくかもしれません.
それでは,徒然文を最後まで読んでいただきありがとうございました.
追記
sorting.jsというサイトが最強ですね.