資格暗記無料で始める

ハッシュ関数と衝突対策とは?

ハッシュ関数と衝突対策とは、キー(データを識別する値)から、データを格納する配列の位置(添字)を計算する関数がハッシュ関数。異なるキーが同じ格納位置に計算される「衝突」が起きた場合の対処法として、同じ位置に複数のデータを連結して保持するチェイン法(連鎖法)や、別の空いている位置を探して格納するオープンアドレス法(開番地法)がある。

はっしゅかんすうとしょうとつたいさく

基本情報技術者試験の頻出用語/テクノロジ系


ハッシュ関数と衝突対策の意味

キー(データを識別する値)から、データを格納する配列の位置(添字)を計算する関数がハッシュ関数。異なるキーが同じ格納位置に計算される「衝突」が起きた場合の対処法として、同じ位置に複数のデータを連結して保持するチェイン法(連鎖法)や、別の空いている位置を探して格納するオープンアドレス法(開番地法)がある。

ハッシュ関数と衝突対策の具体例

社員番号をハッシュ関数配列の添字に変換して格納すれば、探索時も同じ計算をするだけで直接目的のデータにアクセスでき、理論上O(1)で探索できる。

ハッシュ関数と衝突対策は試験でどう引っ掛けられる?

衝突とは異なるキーが同じ格納位置に写ることで、同じキーが重複することではない。チェイン法は同じ位置に連結して保持、オープンアドレス法は表内の別の空き位置を探す。探索は理想時O(1)だが衝突多発でO(n)に劣化する。

ハッシュ関数と衝突対策と関連する用語

最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。