線形探索 アルゴリズム
基本的なアルゴリズムに「線形探索」というものがある。
このアルゴリズムはデータの先頭から順番に探したいデータを調べていくやり方だ。
図
上のソースコードでは、"5"を探すことになっている。
"5"をa[N]の中から探す場合
探したい値"5"をbに代入する。
↓
whileのループに入ったら、a[i]の値とbの値が同じになるまでiを1ずつ増やしていく。
↓
a[0]a[1]....a[i]と探していき、a[2]になったときにa[i]とbの値が一致するので、whileから抜け出す。
↓
そして、if文で、a[i]のiが4未満なら"5"を探したことに成功したことになるので、a[i]を出力する。
a[N]のなかにbが存在しない場合
bに100を代入したとすると、a[i]の中に入っている値が100になるまでiが増えていく。
しかし、今回のa[N]のなかに100は存在しないのでiがNの値を超えるので、ループから抜け出す。
条件の分岐でiがNの数を超えているので、「失敗」になる。