アルゴリズムとプログラミング

基本情報技術者試験衝突がほとんど起きないよう設計されたハッシュ表を用いた探索の、平均的な計算量はどれか

テクノロジ系アルゴリズムとプログラミング難易度:normal
衝突がほとんど起きないよう設計されたハッシュ表を用いた探索の、平均的な計算量はどれか。
O(1)であり要素数にほぼ依存しない
O(log n)で要素数の対数に比例する
O(n)で先頭から順に全件を調べる
O(n log n)で整列を伴う
正解
ア.O(1)であり要素数にほぼ依存しない

ハッシュ探索はキーをハッシュ関数で計算した位置に直接アクセスする。衝突がほぼ無ければ位置計算と1回の照合で済み、要素数nに依存しない平均O(1)となるため正しい。

?選択肢ごとの解説

ア ○ハッシュ探索はキーをハッシュ関数で計算した位置に直接アクセスする。衝突がほぼ無ければ位置計算と1回の照合で済み、要素数nに依存しない平均O(1)となるため正しい。
イ ×O(log n)は二分探索やバランス木の量であり、範囲を半減する探索の特性で、位置を直接計算するハッシュとは原理が異なる。
ウ ×O(n)は線形探索の量で、先頭から全件を走査する手法の特性であり、直接アクセスするハッシュ探索とは異なる。
エ ×O(n log n)は整列の計算量であり、探索単体の量ではないうえハッシュ探索は整列を必要としない。
この問題の「深掘り・誤答の完全解説・覚え方」は、登録すると読めます。

基本情報技術者試験は全4,036問。公開しているのはその一部で、登録すると残りも一問ごとにAI解説つきで解けます。SRS暗記カード・全真模試・弱点診断まで。

登録は1分・クレジットカード不要。無料のまま練習・暗記カード・模試まで使えます。

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-a3-0137

【基本情報技術者試験】衝突がほとんど起きないよう設計されたハッシュ表を用いた探索の…|正解「O(1)であり要素数にほぼ依…」|ukamiru 過去問