半岛体育- 半岛体育官方网站- APP下载第9章查找第4讲哈希表
2025-11-07半岛,半岛体育,半岛体育app,半岛官网,半岛电竞,半岛真人,半岛棋牌,半岛体育官网注册,半岛体育官方app下载,半岛体育app下载,半岛体育怎么样,半岛体育官网,半岛体育登录入口,半岛体育官方网站
注意:哈希表是一种存储结构,它并非适合任何情况,主要适合记录的关键字与存储地址存在某种函数关系的数据。
对于两个关键字分别为ki和kj(i≠j)的记录,有ki≠kj,但h(ki)=h(kj)。把这种现象叫做哈希冲突(同义词冲突)。
直接定址法是以关键字k本身或关键字加上某个数值常量c作为哈希地址的方法。直接定址法的哈希函数h(k)为:
讲解:除留余数法就是把n个记录按关键字映射的0~m-1的哈希空间中。而模p(素数)时出现冲突的可能性更小。
【例9-9】假设哈希表长度m=13,采用除留余数法哈希函数建立如下关键字集合的哈希表(16,74,60,43,54,90,46,31,29,88,77),共11个关键字。
示例:如果你买了电影票,到电影院时已经开映了,你的位置被别人占用了,你需要找一个空位置。这就是开放定址法的思路。
示例:在电影院中找被占用位置的后面空位置!模m是为了保证找到的位置在0~m-1的有效空间中。
非同义词冲突:哈希函数值不相同的两个记录争夺同一个后继哈希地址堆积(或聚集)现象。
平方探查法是一种较好的处理冲突的方法,可以避免出现堆积现象。它的缺点是不能探查到哈希表上的所有单元,但至少能探查到一半单元。
【例9-10】假设哈希表长度m=13,采用除留余数法哈希函数建立如下关键字集合的哈希表:


