關於雜湊查詢,平方探測法 二次探測法 的問題

2021-05-14 10:11:44 字數 3100 閱讀 1858

1樓:匿名使用者

你的好像弄錯了,其實前面這個-4就已經是4-3=-1,這個代表將儲存空間首尾相連(如同迴圈佇列一樣),你的這個下標如果從1開始,則-1自然是最大下標了,不知道你的表長度是否20,如果是,則就是20,不過一般這個下標範圍是0~n-1,所以是n-1

還有,這個(h(key)+d)/m 應當是取餘數吧,不會是/

順便說一句,不知道你的表長度是否20,這個平方探測法的表長度要求是4k+3的質數,不然有些地方可能探測不到的

資料結構 雜湊函式 平方探測法問題

2樓:匿名使用者

可以 ,探測本身就是個取餘操作,取餘就相當於將雜湊表看成一個迴圈表。

二次探測法,能不能單向向右查詢? 5

3樓:

你的好像弄錯了,其實前面這個-4就已經是4-3=-1,這個代表將儲存空間首尾相連(如同迴圈佇列一樣),你的這個下標如果從1開始,則-1自然是最大下標了,不知道你的表長度是否20,如果是,則就是20,不過一般這個下標範圍是0~n-1,所以是n-1

還有,這個(h(key)+d)/m 應當是取餘數吧,不會是/

順便說一句,不知道你的表長度是否20,這個平方探測法的表長度要求是4k+3的質數,不然有些地方可能探測不到的

二次探測雜湊法

4樓:一枝獨秀

二次再雜湊法是指第一次雜湊產生雜湊地址衝突,為了解決衝突,採用另外的雜湊函式或者對衝突結果進行處理的方法。

雜湊函式的選擇有兩條標準:簡單和均勻。

簡單指雜湊函式的計算簡單快速;

均勻指對於關鍵字集合中的任一關鍵字,雜湊函式能以等概率將其對映到表空間的任何一個位置上。也就是說,雜湊函式能將子集k隨機均勻地分佈在表的地址集上,以使衝突最小化。

5樓:義柏廠

二次探測雜湊法,這個應該是初中裡面的,不過你還是學生的話,還是你自己解答吧,因為我這邊也不方便給你解答,希望你諒解。

6樓:風向

雜湊(hashing)是電腦科學中一種對資料的處理方法,通過某種特定的函式/演算法(稱為雜湊函式/演算法)將要檢索的項與用來檢索的索引(稱為雜湊,或者雜湊值)關聯起來,生成一種便於搜尋的資料結構(稱為雜湊表)。二次再雜湊法是指第一次雜湊產生雜湊地址衝突,為了解決衝突,採用另外的雜湊函式或者對衝突結果進行處理的方法。

7樓:華詩苼

二次探測散裂法這是一個非常非常好的方法,希望你用著會喜歡。

8樓:**費幾號

15,38,61,84除11的餘數分別為4,5,6,7,沒有重複,因此分別就放在這4個下標

49除11的餘數為5,發生衝突,因為是二次探測,所以接下來分別探測+1, -1, +4, -4, +9, -9...

顯然5 + 1, 5 - 1的位置都有衝突,5 + 4的位置沒有衝突所以最後放入的位置是9,也就是答案d

9樓:匿名使用者

那是探測雜湊法,這個是一個比較嚴謹的問題,我建議你去相關的書籍去查詢,去的你就會能得到一個特別正確準確的答案

10樓:曹樂正帆

一個數學研究的基礎課超,好難的。

11樓:匿名使用者

這是西安交大的題吧?

12樓:胡椒玉米片

看也看不懂這是什麼東西。

資料結構小問題 幫忙解釋下

13樓:雷哥的太陽系

addr(49)=4 衝突 採用二次探測發(平方探測法) 第一次:+-1 為 4 5 衝突 第二次 :+ -4 9 可以 選d

14樓:匿名使用者

next只是一個取名啊,你自己可以隨便取什麼名字的.你取pre都可以...只是這樣取名字更直觀一些.

光看到這個變數而不看建構函式的話你可能不知道為什麼,如果你看看建構函式參數列第二個引數(listnode*n = null),這是一個指向listnode型別的指標,預設賦值為null,null就是空指標的意思(順便回答你的第二個問題),這是系統指定的一個預設地址,代表你什麼東西都沒有指向.如果你建構函式沒有第二個引數輸入的話,系統就認為你指向null,就是什麼也沒有指向.同時注意看建構函式":

"後面初始化了兩個成員變數,其中第二個是next(n), 表明用n來初始化你的next,這下應該明白了吧.

current->next = new listnode(x, current -> next);這條語句的意思是用x和current->next作為引數構造一個新的結點,其中x賦值給element,current->next賦值給next,同時把這個結點賦給current->next,這個時候原來的current->next的值就被這個新的值取代了.比如,你原來current存的值是1,current->next是null(因為你下一個結點還沒有建立呢),這條語句就是建立一個新的結點,假設x=2,這樣你就建立了一個新的結點,存的值為2,指向原來的current->next(注意是null),同時把它賦值給current->next(注意這個current是存1那個結點),這樣的結果就是原來那個結點的next指向這個新建的存有2的結點.

希望我講得還算明白,感覺講得過繞了...

15樓:匿名使用者

第一題:雜湊表的定義(一組關鍵字通過雜湊函式得到一段連續的地址),addr(15)=4,是通過15%11,即15除以11取餘數4。

第二題:核心是雜湊表處理衝突方法:開放地址法(二次探測再雜湊),你查查這個方法的思想,一兩句話也解釋不清楚

第三題:當做定理記吧!

二次探測法(資料結構)

16樓:時光時光墾丁丁

感覺你給出的已插入關鍵字應該是:t[6]和t[7],這樣第一和第二次才會發生碰撞。

23第一次雜湊的值是6(23%17),碰撞,第二次是7(23+1*1)%17,碰撞,第三次是10(23+2*2)%17

17樓:

二次探測的公式為(h(key)+di)modm,不是(key+di)modm,那個最佳答案明顯有問題的

關於x的一元二次方程x平方m3xm平方

1.判別式 m 3 2 4m 2 0所以來有方程有二個源 不相等bai的實根.2.x1 x2 m 3,x1x2 m 2 0故二個根一個正一du個負,則設zhix1 0,x2 0有 x1 x2 2,x1 x2 m 3 2,m 5方程是x 2 2x 25 0 x 1 2 26 x1 1 根號dao26,...

已知關於x的一元二次方程x平方2k1xkk

1方程有兩個不等實數根,則有 2k 1 版2 4k k 2 4k2 4k 1 4k2 8k 12k 1 0 k 權1 12 2k 1 x 2 3x 0 x x 3 0 x1 0 x2 3 因為抄方程有兩襲個不等實數根,bai所以得du 2k 1 2 4k k 2 4k2 4k 1 4k2 8k zh...

關於x的一元二次方程x的平方m2xm10有兩個

m 0或8 解答過程 將方程配方得到 x m 2 2 2 m 1 m 2 2 4 0,要使得x 2 m 2 x m 1 0有兩個相等的實數根,則m 1 m 2 2 4 0,解得m 0或8.由兩個相等的實根,可知方程判別式為0,即 m 2 2 4 m 1 0,即m 2 8m 0,所以,m 0,或者m ...