アルゴリズム,選択法とバブルソート

アルゴリズムは、順次・選択・繰返しの基本制御構造でほとんど表現できる。これらの3つの制御のみで記述されるものを構造化プログラミングと呼ぶ。

変数はデータを入れる箱。その箱に付けた名前を変数名。

アルゴリズムをフローチャートの図で表現したものを、流れ図という。

ハッシュ検索

データが格納されている場所をハッシュ関数で管理する。商品番号がハッシュ関数を通ると、ハッシュ値に変換されて、探したいデータがすぐに見つかる。

ただし、違うキー(商品番号)なのに、同じハッシュ値が出てしまうコリジョン(衝突)が発生することがある。

コリジョンが起きたときは、チェイン法でキーに対応するデータを用意しておくことで解決する。

整列アルゴリズム

選択法と交換法(バブルソート)などがある。

選択法

最小値から順番に、先頭に格納していく整列方法。

i番目に小さい値を2つ目から検索する。

A[m]>A[j]: jの方が小さければ、mにjを代入する

m←j

j←j+1: jをインクリメント

バブルソート

左端から、隣り合う要素同士を比較して、小さければ左にずらしていく。最大値は右端に集まる。隣同士を比較して繰り返していくので、回数が多くなってしまうのがデメリットでもある。