ハッシュインデックスアルゴリズム

ハッシュ インデックスは、DBMS のストレージ マネージャーで一般的に使用されるインデックス構造です。

ハッシュ法の基本的な考え方:

特定のハッシュ関数を通じて、ノードのキーコード値からノードの格納アドレスが計算され、適切な方法で衝突が解決されます。

ハッシュ テーブルのアドレス空間を 0 ~ 12、ハッシュ関数を h(k)=k mod 13 とし、線形プローブを使用して衝突を解決します。

次に、空のハッシュ テーブルから開始して、キー コード値 95、14、61、27、69 を順番に挿入します。最後のキー コード 69 のアドレスは何ですか? ? ?

分析する

ハッシュ計算を行ってハッシュアドレスを取得し、指定したアドレスに格納します。

アドレスにすでに要素がある場合、それは「競合」と呼ばれ、
その競合は線形検出やハッシュなどの競合検出方法によって処理されます。

1. 13 個のアドレス (0 ~ 12) でハッシュ テーブルを構築します
2. 各要素のハッシュ アドレスを計算します。競合がない場合は、対応するアドレスのハッシュ テーブルに直接格納します:
h(95) =95%13 =4 競合なし
h(14)=14%13 =1 競合なし
h(61)=61%13=9 競合なし
h(27)=27%13=1 競合 (アドレスがすでに 95 で占有されているため)

競合する要素については、競合が発生した直後に (線形探索法を使用して) 処理する必要があり、最後に一緒に処理することはできません: h(27)=27%13
=1 競合
h(27)=(1+1) )%13= 2 競合なし
h(69)=69%13=4 競合あり
h(69)=(4+1)%13 =5 競合なし

したがって、最後のキーコード 69 のアドレスは (5) になります。

おすすめ

転載: blog.csdn.net/qq_45157635/article/details/119895406