哈希表
数组是无序排放的,我们要查找某个元素但不知道下标的话,只能使用遍历的方法去一个一个查找
将一个字符串(key)转化为数组长度范围内的下标值的过程就称作为 哈希化,而实现哈希化的代码一般会封装在一个函数里,这个函数就叫做 哈希函数
哈希表通过元素查找到下标,从而快速定位到数据的位置
简而言之就是设置一个函数建立字符串与数组中下标的关系,这样我们就可以利用字符串去查找它在数组中的下标
例子:
key就是学号101011,value就是张三,我们将学号输入到哈希函数只是为了确定这个value该放在哪个位置而已。
哈希冲突
问题???要是不同的key经过转换之后生成了相同的哈希值怎么办
1、开放地址法
对原来的值加上一个随机的数进行二次哈希,?号是可变的,一直变道哈希冲突消失为止,只要地方够多总可以找到空位置
2、链地址法
在下面连一个链表,有重复就放链表上