過去問ハブ🔥 0日
データ構造とアルゴリズム探索・ソートアルゴリズム難易度 標準21 / 50

昇順に整列された配列 D[0]〜D[10] = [3, 9, 14, 21, 27, 33, 40, 46, 52, 61, 75] から、2分探索で値46を探す。left=0, right=10 から始め、mid = ⌊(left + right)/2⌋ の要素と比較し、D[mid] が46より小さければ left = mid + 1、大きければ right = mid − 1 とする。比較される要素の値を順に並べたものはどれか。

選択肢をタップすると、その場で答え合わせできます

正解と解説を見る

正解 A33, 52, 40, 46

解説

正解は「33, 52, 40, 46」です。2分探索では、探索範囲の中央の要素と比較し、目的の値より小さければ右半分、大きければ左半分に範囲を絞ります。最初は mid=5 の33と比較し、46より小さいので left=6 とします。次に mid=8 の52と比較し、46より大きいので right=7 とします。続いて mid=6 の40と比較して left=7 とし、最後に mid=7 の46と比較して見つかります。「33, 52, 46」は、範囲6〜7の中央を切り上げで求めた場合の順序で、問題の切り捨ての規則と異なります。「27, 46」と「33, 40, 46」は、範囲の絞り込み方が規則どおりになっていません。

  • #2分探索

この調子でデータ構造とアルゴリズムを続けて解く

▶ この科目の連続演習へ進む(10問)

この問題の分野を深く学ぶなら

PR情報工学・理系基礎の教科書を探す

詳細を見る

データ構造とアルゴリズムの問題一覧へ戻る

「探索・ソートアルゴリズム」の関連問題