使用线性探测法构造哈希表
来源:互联网 发布:外贸企业数据 编辑:程序博客网 时间:2024/05/17 05:52
原文:http://hi.baidu.com/jiang_yy_jiang/blog/item/931d763ed8edc8f2838b13c3.html
已知一组关键字为(26,36,41,38,44,15,68,12,06,51),用除余法构造散列函数,用线性探查法解决冲突构造这组关键字的散列表。
解答:为了减少冲突,通常令装填因子α<l。这里关键字个数n=10,不妨取m=13,此时α≈0.77,散列表为T[0..12],散列函数为:h(key)=key%13。
由除余法的散列函数计算出的上述关键字序列的散列地址为(0,10,2,12,5,2,3,12,6,12)。
前5个关键字插入时,其相应的地址均为开放地址,故将它们直接插入T[0],T[10),T[2],T[12]和T[5]中。
当插入第6个关键字15时,其散列地址2(即h(15)=15%13=2)已被关键字41(15和41互为同义词)占用。故探查h1=(2+1)%13=3,此地址开放,所以将15放入T[3]中。
当插入第7个关键字68时,其散列地址3已被非同义词15先占用,故将其插入到T[4]中。
当插入第8个关键字12时,散列地址12已被同义词38占用,故探查hl=(12+1)%13=0,而T[0]亦被26占用,再探查h2=(12+2)%13=1,此地址开放,可将12插入其中。
类似地,第9个关键字06直接插入T[6]中;而最后一个关键字51插人时,因探查的地址12,0,1,…,6均非空,故51插入T[7]中。
- 使用线性探测法构造哈希表
- 线性探测法构造哈希表(hash)
- 利用线性探测法构造哈希表
- 哈希表的构造之线性探测法
- 哈希表---线性探测法
- 线性探测法构造hash表
- 线性探测法构建哈希表
- 哈希表线性探测&二次探测
- 哈希表(线性探测法处理冲突)
- 哈希表-开放地址法之线性探测
- 哈希表线性探测再散列
- 哈希表-线性探测
- 线性探测法hash
- 构造哈希表之二次探测法
- 哈希表(线性探测再散列)
- 实验 哈希表线性探测再散列
- hash表线性探测法
- 散列表--线性探测法
- 输入两个整数 n 和 m,从数列1,2,3.......n 中 随意取几个数, 使其和等于 m ,要求将其中所有的可能组合列出来.
- mysql(2) access denied for user 的解决方法
- java多线程基本知识
- LED驱动实例
- [linux]vi/vim中的替换命令详解
- 使用线性探测法构造哈希表
- spring & aop- hello world (一)
- 静态库的编译方法 本来源自孙东风的blog,略添了部分
- 获取Android手机中SIM卡状态
- 银行业务调度
- Java回调方法
- SQL查询多条不重复记录值
- STL容器删除元素的陷阱(转)
- Struts2全局拦截器配置