哈希表的相关问题

一、常用的构造哈希函数的方法:

1.直接定址法;

        H(key) = key ||  H(key) = a*key + b ;

2.数字分析法

3.平方取中法

        取关键字平方后的中间几位作为哈希地址

4.折叠法

        将关键字分割成位数相同的几部分,然后取这几部分的叠加和作为哈希地址

5.除留余数法(最常用的方法)

        去关键字被某个不大于哈希表表厂m的数p除后所得的余数为哈希地址。即

                H(key) = key MOD p, p<=m

6.随机数法

对于如何选择哈希函数,通常要考虑一下几点因素:

        (1)计算哈希函数所需时间(包括硬件指令的因素);

        (2)关键字的长度;

        (3)哈希表的大小;

        (4)关键字的分布情况;

        (5)记录的查找频率。

二、处理冲突的方法

        1.开放定址法

                1.1线性探测再散列
                1.2二次探测再散列
                1.3伪随机再散列

        2.再哈希法

        3.链地址法

        4.建立一个公共溢出区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

番茄土豆。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值