- 博客(7)
- 收藏
- 关注
原创 关于哈希表的学习笔记
在C++98中,stl提供了底层为红黑树的几个关联式容器,查询时最差的情况就是需要比较红黑树的高度次,当节点变多的时候,查询的效率就不那么明显了,而在C++11中新增的unordered系列的关联式容器,它们的用法和map/set类似,但底层采用的是。
2024-03-30 23:44:55
1410
原创 红黑树学习笔记
map/set/multiset/multimap的底层是二叉搜索树,而二叉搜索树也会出现一个单链表的情况,所以通过增加平衡因子来降低树的高度,这也是AVL树的实现原理,在AVL树那里有个疑惑就是不一定有平衡因子也能调节,在学习了红黑树的实现后,这个疑问的答案大概就是这个了,所以对此进行记录,以防遗忘。
2024-03-29 18:29:47
416
原创 AVL树学习笔记
二叉搜索树是map/set/multiset/multimap的底层实现逻辑。二叉搜索树如果在插入的元素有序的话,就会成为一个单向链表。所以增加了平衡因子来调整结构。特点:1、AVL树的左右子树的高度之差不超过绝对值1。2、一个二叉搜索树如果高度平衡,它就是AVL树,假设ta有n个结点,其高度O(log2n),搜索时间复杂度O(log2n)。但是,AVL树不一定有平衡因子,使用平衡因子只是它的一种实现方式。(对于这点目前有点疑惑,如果没有平衡因子,它又怎么判断是否该调整呢?
2024-03-27 22:48:55
368
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人