探索
リンク | 概要 |
---|---|
二分探索 | 整列済みのデータに対して、あたりを付けながら(データの数を半分にし)繰り返し検索する。 |
線形探索 | 先頭から順に検索する。 |
Tree構造 幅優先探索(BFS) | 幅優先でルートに近いものを左から右と取り出す。 |
Tree構造 深さ優先探索(DFS) | 深いところまで一気に潜り、再帰的に他の要素を取り出す。 |
ソート
リンク | 概要 |
---|---|
バブルソート | 隣り合う要素の大小を比較しながら整列。 |
マージソート | 分割統治法による整列。 |
挿入ソート | 整列してある配列に追加要素を適切な場所に挿入を繰り返す。 |
シェルソート | 間隔の離れた要素を比較し、要素間の間隔を小さくしながら並び替えを繰り返す。 |
選択ソート | 要素から、最大値または最小値を探索し、配列最後の要素と入れ替えを繰り返す。 |
ヒープソート | リストの並べ替えを二分ヒープ木を用いて行う。 |
クイックソート | 他のソート法と比べて、一般的に最も高速(※必ずしも速いわけではない) |
その他
リンク | 概要 |
---|---|
Fizz Buzz | 入門に最適なかんたんなゲームを書いてみる。 |
乱数でランダムな要素と構造の二分木を作成 | 幅優先探索などをかんたんに試すために、ランダムな要素と構造の二分木を作成してみます。 |
二分木を表示 | 二分木をターミナル上でかんたんに表示するための仕組みを作成してみます。 |
ユークリッドの互除法 | 2つの自然数の最大公約数を求める手法の一つを実装してみる。 |