ハッシュマップとは何ですか?
コンピューターサイエンスでは、ハッシュマップまたはハッシュテーブルはデータを構造化する形式であるため、各データは一意の識別番号またはシンボルにリンクされます。 これにより、特に数千のエントリを含む大規模なデータベースから簡単に取得できます。 ハッシュマップはプログラムの特定の部分ではなく、データベース内のキーと呼ばれる各アイテムをそのアイテムを表す値に割り当てるデータ編成の形式を指します。 ハッシュ関数は、キーをその値にリンクするプログラムの一部です。
電話帳は、ハッシュマップの優れた例として役立ちます。 電話帳のレイアウト方法は、ハッシュマップ構造を表しています。 異なる値をリンクし、1つの値のみを他の対応する用語または電話番号にリンクすることに焦点を当てています。 電話帳の名前はキーであり、電話番号はそれらに関連付けられた値です。 本のすべての人には異なる番号が割り当てられており、2人は同じではありません。
私書箱もハッシュマップのメタファーとして機能します。 すべての人が単一のボックスの鍵を持っています。 箱には、請求書、手紙、はがきなど、箱の鍵を所持している個人向けの複数の情報を入れることができます。 正しいボックスに正しいキーが挿入または一致すると、そのキーが開き、その内容が表示されます。
完全に機能するハッシュマップは、1つのキーをコンピューターデータベースの1つのメモリ「ボックス」にリンクします。 残念ながら、2つのキーが同じボックスに移動するハッシュ衝突と呼ばれる要因が発生する可能性があります。 これは、大量のデータが入力され、すべてを収容するのに十分な「ボックス」がない場合に発生します。
電話帳や私書箱とは異なり、ハッシュマップにはキーとそれに一致する値またはボックスに加えて3番目の要素が含まれます。 ハッシュ関数も含まれています。 人はどの私書箱が彼女のものであるかを知っていますが、どのキーがどのボックスに行くかをコンピュータに伝える必要があります。 ハッシュ関数はキーを見て、それを一連の数字またはコードに変換し、対応するコードを含むボックスにリンクします。 「Mary」などのキーの名前はそこにあるだけなので、人々が解釈しやすくなりますが、実際のコードはコンピューターが読み取るための数字の文字列です。