如果有人能夠幫助解決這個問題,我將非常感激。問題是: 考慮以下散列函數:對於某些正數,h(k,i)=(h'(k)+(1/2)(i + i^2))mod m,其中m = 2^p整數p。證明或證明對於任何k,探針序列是< 0,1,2,...,m-1的置換。證明二次探測函數
Q
證明二次探測函數
0
A
回答
1
是的。
我們假設h(k, i) = h(k, j)
。
然後h'(k) + 1/2 * i * (i + 1) = h'(k) + 1/2 * j * (j + 1) (mod m)
< =>1/2 * i * (i + 1) = 1/2 * j * (j + 1) (mod m)
=>
< i * (i + 1) = j * (j + 1) (mod 2m)
=>i * i - j * j + i - j = 0 (mod 2m)
< =>(i - j) * (i + j + 1) = 0 (mod 2m)
。第二項是奇數和2m = 2^(p + 1)
,因此i = j (mod 2m)
=>i = j (mod m)
。
+0
謝謝!很好地解決問題! –
相關問題
- 1. 二次探測
- 2. 計數探針探測二次
- 3. 從線性探測移動到二次探測(散列碰撞)
- 4. 二次探測哈希表的限制
- 5. 探測python函數
- 6. 在Python中使用二次探測的字符串哈希
- 7. 哈希表和Java中的二次探測幫助
- 8. 使用二次探測實現哈希表的原因
- 9. 這個散列探測方法是如何二次的?
- 10. 聲明函數次數
- 11. 如何在使用二次探測時在數組中找到特定元素?
- 12. 探測全局變量以調用函數內部函數
- 13. '預測'函數的'level ='參數是如何證明的?
- 14. 二叉樹的數學證明
- 15. 具有複數的二次函數
- 16. 二叉樹歸納證明
- 17. 在kretprobe的entry_handler中獲取探測函數的參數
- 18. Scapy的嗅探()函數不工作沒有明顯的原因
- 19. Golang測試聲明爲變量的函數(作證)
- 20. 聲明函數第二部分
- 21. 聲明變量的函數二郎
- 22. 探測的Dll
- 23. 嗅探檢測
- 24. 無法探測
- 25. 探測組件
- 26. Rails - Devise的二次認證?
- 27. int無二次函數遞歸?
- 28. 第二次加載後運行函數
- 29. 二次函數的漸近緊束縛
- 30. Julia PyPlot無法創建二次函數
h'(k)表示什麼? – Pavel
它是一個哈希函數 –
初始哈希函數,它始終保持不變,像(k mod 11) –