基本情報暗記無料で始める

シノニムとは?しのにむ

シノニムとは、ハッシュ表で別々のキーが同じ位置に当たってしまう現象、およびぶつかった相手のキーを指す語。衝突(コリジョン)とも呼ぶ。キーの種類は格納位置の数よりずっと多いので必ず起こると考え、起きたときの逃がし方を設計に組み込む。探索が遅くなる原因にもなる。

最終更新:2026-10-09

試験情報

基本情報技術者試験の過去問では1問の解説で触れられています。

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

この語が出る過去問を解く →

背景

大量のデータから1件を取り出すのに、先頭から順に見ると件数に比例して遅くなる。キーを計算式で位置に変換すれば1回の計算で当たり、件数が増えても速さがほとんど落ちない。ただし数え切れないほどあるキーを有限の位置へ写す以上、同じ位置に重なる組は必ず出る。ハッシュ表の速さは、この重なりをどう捌くかで決まる。

具体例

学籍番号を7で割った余り(番号 mod 7)で7つの箱に振り分けると、12番(12÷7の余りは5)と19番(19÷7の余りは5)はどちらも箱5に入りシノニムになる。捌き方は2通りで、空いている別の箱へずらして入れるオープンアドレス法か、箱5から連結リストを伸ばして両方をつなぐチェイン法である。

試験での引っ掛け

「良いハッシュ関数を選べば衝突は起きない」は誤り。入れ物より物が多ければどこかで必ず重なるという考え(鳩の巣原理)により、格納位置より多くのキーがあれば必ずぶつかる。関数に求められるのは衝突をなくすことではなく、位置を偏りなく散らして発生を減らすこと。同じキーが重複することを指す語でもない。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 1問の解説で触れられる
  • 分野:テクノロジ系
  • 「良いハッシュ関数を選べば衝突は起きない」は誤り。