哈希函数是哈希结构的重要组成部分,一个好的哈希函数可以提高查询的效率。在python中有两个数据结构是哈希结构实现的,分别是set集合和dict字典。那么这篇文章主要想带大家实现一个简单的字典的结构,也就是hashmap,这个数据结构是由一个个的键值对(k,v)组成。
假定k,v都是int的整数类型,哈希函数我们使用最经典的取模运算
对于哈希函数会存在key取模后值相同的这种情况,处理办法就是我们采用python自带的数据结构list来线性存储值相同的value
注:由于我们要实现字典的功能,所以存储key,value的数据结构需要我们自己来实现
实现hashmap的组件
对于hashmap这个数据结构,常用方法就是增删改查,具体的实现方法就是对应get(),put(),delete()这个三个函数,我们假定哈希函数为key%1000,存储kv键值对的数据结构如下:
[ [] for i in range(1000) ]
初始化一个包含有1000个空list的二维list,其中空的list中存放的就是含有键值对的对象
键值对的对象代码如图
![73ceaccf1951980c4319a692a6b5dfec.png](https://i-blog.csdnimg.cn/blog_migrate/ba73d43822ae8bed84cb85c56a8664ca.jpeg)
这个对象需要具备获取key的值(getKey()这个方法),更新key的值(