
数据结构
搬砖升级打怪
这个作者很懒,什么都没留下…
展开
-
hashmap、hashtable和concurrenthashmap
hashmap、hashtable和concurrenthashmap hashMap 继承自AbstarctMap类 底层数据结构是:数组+链表+红黑树 key和value都允许为null。key为null的键值对永远都放在以table[0]为头结点的链表中。 初始容量为16,扩容是乘以2。 线程不安全的键值对存储结构,当有多线程同时修改的时候可能会形成环结构,从而造成死锁问题。 为什么容量要总是2的次幂: 用与运算代替取模运算,速度快 为了散列更均匀,利用0&1 = 0, 1&1原创 2020-08-07 10:13:07 · 133 阅读 · 0 评论 -
红黑树结构复习
1、红黑树是一棵非严格的自平衡的二叉搜索树,在插入和删除树节点的同时通过特定算法来保持二叉查找树的平衡。若一棵二叉查找树是红黑树,则它的任一子树必为红黑树。 2、红黑树是每个节点都带有颜色属性的二叉查找树,颜色或红色或黑色。除需满足二叉查找树的要求之外,对于任何有效的红黑树还需满足如下要求: * 节点是红色或黑色。 * 根节点是黑色的 * 所有叶子都是黑色且为null。 * 每个红色节点的两个子节点都是黑色。(即从每个叶子到根的所有路径上不能有两个连续的红色节点) * 从任一节点到其每个叶子的所有路径都原创 2020-08-01 18:02:56 · 122 阅读 · 0 评论