哈希表与哈希冲突

哈希表

数组是无序排放的,我们要查找某个元素但不知道下标的话,只能使用遍历的方法去一个一个查找
将一个字符串(key)转化为数组长度范围内的下标值的过程就称作为 哈希化,而实现哈希化的代码一般会封装在一个函数里,这个函数就叫做 哈希函数
哈希表通过元素查找到下标,从而快速定位到数据的位置

简而言之就是设置一个函数建立字符串与数组中下标的关系,这样我们就可以利用字符串去查找它在数组中的下标

例子:
key就是学号101011,value就是张三,我们将学号输入到哈希函数只是为了确定这个value该放在哪个位置而已。

哈希冲突

问题???要是不同的key经过转换之后生成了相同的哈希值怎么办

1、开放地址法

对原来的值加上一个随机的数进行二次哈希,?号是可变的,一直变道哈希冲突消失为止,只要地方够多总可以找到空位置
在这里插入图片描述
2、链地址法
在下面连一个链表,有重复就放链表上
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值