【Unity/C#】ヒープソートのアルゴリズムをC#で実装する
ソートアルゴリズムの一種であるヒープソートは、ヒープの性質、法則性が分かると簡単に実装できます。実行も速いのでぜひ挑戦してみてね。
あなたのゲームをいち早く完成させるための研究所
ソートアルゴリズムの一種であるヒープソートは、ヒープの性質、法則性が分かると簡単に実装できます。実行も速いのでぜひ挑戦してみてね。
ヒープソートの前段階として、配列をヒープ構造に変換する処理を実装します。初心者の頃はヒープってわかりにくかった記憶があるので、絵で解説してます。
挿入ソートは配列の要素をずらして移動させるソート方法。リアルな世界で本棚を整理するときのことを思い浮かべたら分かりやすいかもしれません。
交換ソートの性能比較を行いました。数字で比較すると、オーダーでの比較に現れない差異が見て取れて楽しいですね。
交換ソートのひとつであるクイックソートは、ソートするならクイックソートで、と言われるくらいには速いソート方法です。バブルとクイックは押さえておきたいところ。
交換ソートのひとつであるノームソート。名前がファンタジーなのでお気に入りのアルゴリズムです。
交換ソートのひとつであるコムソートは、実装が単純なのに速度が出る素敵ソート。ポイントは伸縮率の1.3という数字です。
交換ソートのひとつである奇偶転置ソートは、比較・交換を行うペアを独立させられるため、並列処理に向いたソート方法です(重要)
シェーカーソートについての説明とC#による実装を紹介しています。バブルソートの改良型としてこれも有名。
バブルソートについての説明とC#による実装を紹介しています。一度は触れるアルゴリズムよね。
初心者のうちからアルゴリズムを理解し、処理時間を意識していくと、超イケてるプログラミングが可能になります。慣れてる人は多分無意識のうちにやっていることなんですよね。