アルゴリズムⅠ・講義メモ3(新)

線形探索

・ライナーサーチ、リニアサーチともいう最も単純なアルゴリズムの一つ
・まず、単純なパターンを作ってみよう
① カウンタを0にする
② カウンタが要素数未満である間繰返す
 ・要素[カウンタ]が検索値と一致したら「カウンタ番目にある」と表示
 ・カウンタに1加算
③ カウンタが要素数と一致していたら「探索完了」と表示

フローチャートを作ろう liner1.xml

・http://ha233.rundog.org/wp-content/uploads/2023/06/liner1.zip

提出:プログラムにしよう

int[] val = {10,20,30,40,50,60}; //元の1次元配列
var goal = 20; //検索値
var cnt = 0; //カウンタを0にする
//カウンタが要素数未満の間繰返す
while(cnt < val.Length) { 
    if(val[cnt] == goal) {
        Console.WriteLine("{0}番目にある", cnt + 1); //先頭が1番目だとする
    }
    cnt++;
}
if (cnt == val.Length) { //カウンタが要素数になっていたら
    Console.WriteLine("探索完了");
}
※改良すべき問題点が含まれています。次回フォローします。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です