2012-01-20 83 views
0

可有一個解釋哈希表查詢

給定大小的哈希表陣列N = 11,並且使用散列函數 - H(X)= 3×+模N

與線性探測

總之,以下的操作順序進行 :

插入件5,插入件15,插入如圖4所示,插入圖8,插入如圖7所示,插入件12

哈希表的最終狀態是什麼?


通過我的邏輯
H(5)=(3 * 5)+(7 MOD 11)= 15 + 7 = 22在表中,以便把[0]
H(15)=(3 * 15)+(7 MOD 11)= 45 + 7 = 52在陣列[0],以便放置..斜面所以把在表[1]

但顯然我的方法是錯誤的。 - 例如h(15)在表[8]中排名15
我未能說明什麼?

編輯:

忘記國防部11答案!簡單的錯誤。
H(5)=((3 * 5)+ 7)MOD 11 = 15 + 7 = 22 - > 22模11 = 0在表中,以便把[0]
H(15)=(( 3 * 15)+ 7)mod 11 = 45 + 7 = 52 - > 52 mod 11 = 8 so place in array [8]

+0

52 mod 11不是0. –

回答

2

我想你的散列函數應該是(3x + 7) 3x +(7模N)。

+0

這會更有意義!這是一個漫長的一天。 –