アルゴリズムⅠ・講義メモ1

・線形探索の続き、ソート

線形探索:プログラムにしよう

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("探索完了");
}

線形探索:プログラムを改良しよう

・このプログラムは検索値が配列に存在しない場合の対処がないので追加しよう
・1つ見つかれば良いので、「●番目にある」と表示したら繰返しを抜けよう
・すると、見つけた場合は「カウンタが要素数になる」ことはない
・よって、「カウンタが要素数になる」場合は「見つからない」と表示しよう
・合わせて、検索値をコンソールから入力するようにしよう
 int goal = int.Parse(Console.ReadLine());

コメントを残す

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