問題
選択肢
- 1-1
- 22
- 33
- 430
正解
2. 2
詳しい解説を見る解説を閉じる
解説
線形探索は配列の先頭から順に目的の値と比較していくアルゴリズムである。トレースすると、i=0:arr[0]=10≠30。i=1:arr[1]=20≠30。i=2:arr[2]=30=30で一致し、その時点でreturn iにより添字2を返して関数は終了する。−1は配列内に目的の値が存在しなかった場合の戻り値、3は「3番目の要素」という日常的な数え方と添字が0始まりであることを混同した場合、30は添字ではなく要素の値そのものを返すと誤読した場合の誤りである。科目Bでは「戻り値は添字か値か」「添字は0始まりか1始まりか」が定番の引っかけであり、線形探索の計算量がO(n)、ソート済み配列に使える二分探索がO(log n)という対比も頻出ポイントである。
一問一答
科目A 180問+科目B 60問