哈希表就类似于字典 key value 在存储的时候会有一个哈希函数 类似于将给定一些限制条件 将所要存储的东西分成有限的份数
如何存储哈希 就如何去取哈希
哈希冲突:对于任何哈希函数 都会出现两个不同元素映射到同一位置上的情况,这种情况叫做哈希冲突
解决哈希冲突的方法:
开放寻址法:
线性探查:位置i被占用,则向i+1,i+2尝试存储,取的时候也一样 取不到就往后取,直到为空,说明不存在此数
二次探查:位置i被占用,则向i+1^2,,i-1^2探查,取与上同理
二度哈希:有n个哈希函数,第1个哈希函数h1发生冲突时,则尝试用h2,h3,.. 取的话第一个取不到则用第二个函数直到取到空
拉链法:
将存储位置变成一个列表 存只需要append即可 取的话也只需要先拿表再取