SkillStack
テクノロジ系69 / 100問

ITパスポート試験 令和5年度 公開問題 問69

配列に格納されているデータを探索するときの、探索アルゴリズムに関する記述のうち、適切なものはどれか。

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】イ

線形探索法は、配列の先頭から要素を一つずつ目的の値と比較する方法です。要素数をnとすると、目的の値が末尾にある場合や存在しない場合には、最大でn個の要素を確認します。そのため、探索に必要な計算量は要素数に比例し、O(n)と表されます。

アの説明は誤りです。先頭から順に調べるのは線形探索法です。2分探索法は、整列済みの配列の中央の要素と目的の値を比較し、探索範囲を半分ずつに絞ります。

ウの説明は誤りです。線形探索法では配列を事前にソートする必要はありません。昇順又は降順にソートされている必要があるのは2分探索法です。

エの説明は誤りです。線形探索法の比較回数は、目的の値が先頭にあるか、末尾にあるか、存在しないかによって変わります。2分探索法の比較回数も値の位置によって変わり、目的の値が先頭にある場合などには線形探索法の方が少ないこともあるため、常に2分探索法が少ないとはいえません。

【ポイント】 線形探索法の計算量はO(n)で、未整列の配列にも使用できます。 2分探索法の計算量はO(log n)ですが、配列があらかじめ整列されている必要があります。 「常に」や「探索する値によらず」という断定表現にも注意します。

出典:令和5年度 ITパスポート試験 公開問題 問69
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の100問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める