📜  门| GATE CS 1996 |第63章

📅  最后修改于: 2021-07-02 17:37:36             🧑  作者: Mango

将字符串KRPCSNYTJM的字符插入大小为10的哈希表中。
使用哈希函数

h(x) = ( ord(x) – ord("a") + 1 ) mod10

如果使用线性探测来解决冲突,则以下插入会导致冲突
(A) Y
(B) C
(C) M
(D) P答案: (C)
解释:
(a)大小为10的哈希表的索引从0到9。
哈希函数= h(x)=((ord(x)– ord(A)+ 1))mod 10
因此,对于字符串KRPCSNYTJM:
将在索引处插入K:(11-1 + 1)mod 10 = 1
索引处的R:(18-1 + 1)mod 10 = 8
索引处的P:(16-1 + 1)mod 10 = 6
索引处的C:(3-1 + 1)mod 10 = 3
索引处的S:(19-1 + 1)mod 10 = 9
索引处的N:(14-1 + 1)mod 10 = 4
索引为(25-1 + 1)mod 10 = 5的Y
索引为(20-1 + 1)mod 10 = 0的T
索引为(10-1 + 1)mod 10 = 0 //的J发生第一次碰撞。
M在索引(13-1 + 1)mod 10 = 3 //发生第二次碰撞。

仅J和M引起了碰撞。

(b)最终哈希表将为:

0    T
1    K
2    J
3    C
4    N
5    Y
6    P
7    M
8    R
9    S

这个问题的测验