-1
我要實現這個散列函數哈希功能 - 右shifitng
「H(K)=((A * K)*模(2^32))RSH(32-R)」。
其中rsh(32-r)是右移一個數字。我該如何做這個正確的轉變。我很困惑,因爲我不知道有多少次它會正確地轉移數字?也沒有在我的PDF中提到。而且表格大小= m = 2^r。因此r = logm。 **必須使用此散列函數。
我要實現這個散列函數哈希功能 - 右shifitng
「H(K)=((A * K)*模(2^32))RSH(32-R)」。
其中rsh(32-r)是右移一個數字。我該如何做這個正確的轉變。我很困惑,因爲我不知道有多少次它會正確地轉移數字?也沒有在我的PDF中提到。而且表格大小= m = 2^r。因此r = logm。 **必須使用此散列函數。
這裏等價功能:
uint32_t rsh(uint32_t num, uint8_t pad) {
return num >> pad;
}
h = rsh((A*k)*mod(2^32), 32 - r);
得到它的感謝! – rayan 2014-09-06 09:11:41
http://www.cprogramming.com/tutorial/bitwise_operators.html – druckermanly 2014-09-06 09:00:32
它將被轉移32 - R的地方 – 2014-09-06 09:02:35
有在C++中,這將有助於我的任何代碼out @MarcoA。 ? – rayan 2014-09-06 09:04:21