数据结构-HashMap

HashMap 思考

  1. python, golang 高级语言中map 如何实现的?

HashMap 介绍

通过Hash算法形成Bucket,常用链表方式解决冲突,插入删除时间复杂度O(1), 空间复杂度O(n)

HashMap 特点

  1. Bucket是通过Hash算法实现,所以会有无序现象。
  2. Bucket是通过Hash算法实现,具体数据存储会有KEY 判别冲突。
  3. 冲突增加,会退化成链表,需要进行ReBuild。

HashMap 定义

type HashMap struct {
  //防止退化链表,进行Rebuild  
  P  float  
  //HashMap 长度
  Len uint
  //桶大小
  Bucket []*LinkedList
  //Rebuild双写
  Temp []*LinkedList
  //Hash算法
  HashFunc func(key string) uint
}

HashMap 实现

https://github.com/xc8801/Data-Structures/tree/master/HashMap

你可能感兴趣的:(数据结构-HashMap)