精品网站做爆款,企业品牌策划设计,如何设计营销型网站建设,wordpress伪静态路径写法哈希表理论总结
什么时候用哈希表#xff0c;快速判断一个元素是否出现在集合中时#xff0c;用哈希这种空间换时间的方法。
哈希函数与哈希碰撞
哈希函数是指将key映射到对应的哈希表上
哈希碰撞是指映射的过程中容易出现多对一的情况#xff0c;用什么方法解决拉链法和…哈希表理论总结
什么时候用哈希表快速判断一个元素是否出现在集合中时用哈希这种空间换时间的方法。
哈希函数与哈希碰撞
哈希函数是指将key映射到对应的哈希表上
哈希碰撞是指映射的过程中容易出现多对一的情况用什么方法解决拉链法和线性探测法 哈希表主要有
数组、set 、map三种
数组适用于给定数量的元素并且数量不多查找起来很方便占用空间小
set 分为三种 set unordered_set, muti_set
set 与muti_set底层都是红黑树并且key有序muti_set特殊在key可以重复他们的查找和删除时间复杂度都是O(Log(n))
而unordered_set 底层是哈希表key无序key不可以重复查找删除时间复杂度为O(1) map也分三种map ,unordered_map,muti_map
map是有key 与value的key都不可以修改
map与muti_map 底层是红黑树key有序muti_map的key可以重复查找删除效率为O(log(n))
unordered_map 底层哈希表key无序key不可以重复时间复杂度为O(1)
map使用时
增加元素用map.insert(pair类型类型{key,value})
key对应的value 变化例如map[key]
查找元素if( map.find(key) ! map.end() )等于true即为找到了 刷题时
注意定义unordered_map类型1类型2 set1 类型1对应key的类型类型2对应value的类型
key就是要查找的元素value就是元素出现的次数