
数据结构
EBABEFAC
兴趣、初心、热情,坚持;怠惰是原罪;
20230530,还是得有一个地方分享下东西,不然自己容易怠惰
展开
-
谈谈HashMap结构那些事~(1.8版本)
1.8版本之前的HashMap结构也没仔细看过,趁着有时间把1.8版本HashMap结构梳理了一遍。下面就是几个总结。HashMap底层就是借助于数组+链表+红黑树实现的。其中红黑树是1.8中引入的,引入的目的就是防止数组中单个节点的链表过长,导致查询速度慢,通过借助于红黑树(自平衡二叉树)良好的查询速度,提升查询性能。/** * The table, initialized on...原创 2019-11-20 23:56:00 · 259 阅读 · 0 评论 -
BST、AVL、B-、B+、红黑树的基本定义和结构
BST即二叉搜索树基本定义:对于任意一个节点,若有左子树,则左子树的所有节点都小于当前节点;若有右节点,则所有右节点都大于当前节点,即满足递归定义。AVL即平衡二叉搜索树基本定义:二叉搜索树(BST)的性质,平衡二叉搜索树也满足;对于任意一个节点,若其左子树的树高为HL,其右子树的树高为HR,则||HL-HR|| < 2B-树基本定义:(M阶B-树)对于节...原创 2019-10-24 22:13:09 · 606 阅读 · 0 评论 -
二叉排序树、平衡二叉排序树、B-树、B+树、B*树
引言:为啥会引入这些树的数据结构呢?在学习数据结构的时候,这块内容放到“查找”的章节中,文中提到,很多的查找算法都是基于顺序存储而言的,且没有考虑 对查找数据进行维护的问题,也就是说只对一组静态数据进行查找。但是在实际的应用中,如果需要对不断更新的数据进行查找,也就是所谓的动态查找,在顺序表中维护数据的有序是比较耗时的。树作为一种动态数据结构,人们发现通过对数的一些结构的限制,能够很大程度上提升查找转载 2017-08-06 12:20:17 · 1183 阅读 · 0 评论