数据结构与算法
文章平均质量分 97
mobº
兴趣使然
展开
-
红黑树的Java实现
红黑树也是一种二叉平衡搜索树,向比与AVL树,是一种弱平衡树。因为AVL树是通过平衡因子,左右树的高度相差不能大于1来保证平衡,而红黑树的左右字数的高度差并不固定,可以大于1,也没有平衡因子的概念。它是通过维护五条性质来保证红黑树是平衡的。红黑树五条性质:节点是 RED 或者 BLACK。根节点是 BLACK。叶子结点(外部节点,空节点)都是 BLACK。RED 节点的子节点都是 BLACK。可类比出两条性质RED 节点的 parent 都是 BLACK。从根节点到叶子结点。原创 2024-03-27 20:36:48 · 562 阅读 · 0 评论 -
B 树的Java实现
M :表示B树的阶数。root :根节点。minKeySize :非根节点含有的最少关键字数量,如果少于该数量,则发生下溢。maxKeySize:每个节点(包含根节点和非根节点)的最大关键字数,如果超过了,则发生上溢。kComparator:用于比较 k,使用k来进行排序,因为我们存储数据使用键值对来存储的。//b 树的根节点//非根节点中最小的键值对(根节点则是 [1,M-1])//所有节点中最大键值对//键的比较器Entry :用来存储关键字。K 用来排序。原创 2024-03-24 18:39:53 · 617 阅读 · 0 评论