
数据结构
zzuhai
这个作者很懒,什么都没留下…
展开
-
HashMap的table索引计算
在整理HashMap的工作原理时,发现它调用了 indexFor(int h, int length) 方法来计算Entry对象保存在 table中的数组索引值:static int indexFor(int h, int length) { return h & (length-1);}123它没有对hash表的长度取余而使用了位运算来得到索引,这是为什么呢,顿生怀疑~分...转载 2020-05-02 15:44:11 · 634 阅读 · 0 评论 -
红黑树
红黑树的定义红黑树是一种近似平衡的二叉查找树,它能够确保任何一个节点的左右子树的高度差不会超过二者中较低那个的一倍必须要满足的条件每个节点要么是红色,要么是黑色。根节点必须是黑色红色节点不能连续(也即是,红色节点的孩子和父亲都不能是红色)。对于每个节点,从该点至null(树尾端)的任何路径,都含有相同个数的黑色节点。左旋红黑树的代码private void rotateLef...转载 2019-04-09 11:33:54 · 131 阅读 · 0 评论 -
堆
特性堆是由数组实现的树和二叉树不同的是堆没有父节点和子节点的指针数组存放的只是值分为最大堆和最小堆:最大堆:所有父节点都大于他的子节点最小堆:所有父节点都小于他的子节点堆的每一层都必须排满了才能接着排下一层代码实现待完成...原创 2019-05-30 14:06:48 · 95 阅读 · 0 评论