题意:散列标记,损坏和冲突的实践。用C++资源实现和编程。编程
你有大小为m=11的哈希表和两个散列函数H1和h2:h1(x)=(x的第一个和最后一个字母的值之和)mod m h2(x)=((最后一个字母的值)mod(m−1))+1,其中字母的值是它在字母表中的位置(例如,值(a)=1,值(b)=2,等等)。这里有一些预先计算的哈希值:word:ape bat bird carp dog hare ibex mud koala stork h1:6 0 6 8 0 2 0 6 1 8 h2:6 1 5 7 8 6 5 5 2 2 A。画出结果哈希表的图片后,按顺序插入如下单词:ibex,hare,ape,bat,koala,mud,dog,carp,stork。B、突出显示在试图寻找鸟类时要查看的单元格。为如下每种技巧作A和B部分:1。用h1做为散列函数单独连接。2用h1做为散列函数的线性探测。三。使用h1做为第一个散列函数,h2做为第二个散列函数的双重散列。练习2–散列最坏的状况:大小为M的哈希表存储N个整数键。碰撞是经过链式处理的,散列函数是h(K)=kmodm.1。最坏的搜索时间是何时?给出一个例子,说明一组密钥达到最坏状况下的搜索时间。2您是否会将此哈希表用于时间紧迫的应用程序(例如,空中交通管制)?练习3–带负载因子的线性探测:演示将键五、2八、1九、1五、20、33插入哈希表,并经过线性探测解决冲突。假设哈希表有m个时隙(m=7),其加载因子为0.70,哈希函数为h(k)=k mod m。koa
更多讨论能够+V:abby12468函数