设一个散列表采用闭散列法构造,散列数采用除留余数法,解决冲突的方法采用二次探查法。基于6-34
(1)在散列表中搜索具有指定关键码值的表项的函数。
(2)在散列表中删除具有指定关键码值的表项的函数。
(3)在散列表中插人具有指定关键码值的表项的函数,
(4)求搜索成功时的平均搜索长度的函数.
(1)在散列表中搜索具有指定关键码值的表项的函数。
(2)在散列表中删除具有指定关键码值的表项的函数。
(3)在散列表中插人具有指定关键码值的表项的函数,
(4)求搜索成功时的平均搜索长度的函数.
设α是散列表的装载因子,则应用线性探查法解决冲突时的搜索成功的平均搜索长度和搜索不成功的平均搜索长度分别为:
请根据题意选择合用的公式。
设散列表容量为11且初始为空,采用除余法确定散列地址,采用单向平方试探法排解冲突,采用懒惰策略实现删除操作。
a)若通过put()接口将关键码(2012,10,120,175,190,230)依次插入中,试给出此时各桶单元的内容;
b)若再执行remove(2012),试给出此时各桶单元的内容;
c)若继续执行get(2012),会出现什么问题?为什么?
d)为避免此类问题的出现,可以采取什么措施?试给出至少两种方案。
在地址空间为0~16的散列区中,对以下关键字序列构造两个散列表:
1)用线性探测开放定址法处理冲突;
2)用链地址法处理冲突。
并分别求这两个散列表在等概率情况下查找成功和不成功的平均查找长度。设散列函数为H(key)=i/2,其中i为关键字中第一个字母在字母表中的序号。
(1)k1的探查序列:___30___,________,________,________,
(2)k2的探查序列:___28___,________,________,________,
(3)k3的探查序列:________,________,________,________,
散列表A[10]中,若采用线性探查方法解决冲突,则在该散列表上进行等概率成功搜索的平均搜索长度为()。
A、2.60
B、3.14
C、3.71
D、4.33
(h+q2),(h+(q-1)2),…,(h+1),h,(h-1),…,(h-q2*),其中,q=(m-1)/2。闪此在相继被探查的两个桶之间地址相减所得的差取模(%m)的结果为m-2,m-4,m-6.…,5,3,1,1,3,5,…,m-6,m-4,m-2,
dr(61)=6、addr(84)=7.其余地址为空。如用二次探查法解决冲突,关键码值为49的散列地址是()。
A、8
B、3
C、5
D、9
若用二次探査法解决冲突,求“下一个空位”的探查序列为:
其中,H0是第一次求得的散列地址,Hi是第i次求得的散列地址,m是散列表的大小。
(1)相邻的地址Hi与Hi-1之间是什么关系?
(2)为保证散列地址序列的地址不会循而往复地重迭,m应设为什么数?装填因子α应如何取值?
(3)为保证在删除时不中断搜索链,可对被删记录做逻辑删除。为此,每个散列地址有3个状态,除了Active(正在使用)和Deleted(删除)状态外,还应有一个什么状态?