您的位置:首页 > 理论基础 > 数据结构算法

数据结构:散列

2015-08-03 21:29 441 查看
散列基本思想:

构造散列函数--->以key为关键字,通过函数h,计算出函数值h(key),作为数据对象的存储地址

处理冲突 --->不同关键字映射到同一个散列地址,即h(key1)=h(key2),需某种冲突解决策略

1.构造散列函数:

设计原则
--->计算简单,地址分布均匀

1).直接定址法:

h(key)=a*key+b

2).数字分析法:

分析各位变化,取比较随机位

3).平方取中法:

把key平方后取中间几位

4).折叠法:

把key分割成位数相等的几部份,之后叠加,按情况取后几位

5).除留余数法:

h(key)=key mod p

6).随机数法 :

h(key)=random(key)

字符关键字:

1).ASCLL码加和法

2).前3个字符移位法

3).移位法

2.处理冲突:

设计原则--->开放地址法,链地址法

1).开放定址发

2).再散列法

3).链地址法

4).建立公共溢出区
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: