摘要:
哈希表为解决冲突,可以采用开放地址法和链地址法来解决问题。 开放地址法(再散列法) 链地址法(数组+链表) Java中 的HashMap使用链地址法。 阅读全文
posted @ 2025-05-15 21:20
kuki'
阅读(15)
评论(0)
推荐(0)
摘要:
读 在最佳情况下,直接通过数组下标访问数据,O(n)还是O(1) 阅读全文
posted @ 2025-05-15 21:00
kuki'
阅读(13)
评论(0)
推荐(0)
摘要:
不追求绝对的平衡,插入/删除节点时,允许有一定的局部不平衡。 红黑树是一种自平衡的二叉搜索树,插入和删除的时间复杂度是O(log n); 红黑树和二叉搜索树、AVL树有什么区别? 红黑树:节点颜色为红色或黑色 根节点和叶子节点为黑色; 任意一个红色节点的子节点是黑色。 插入和删除操作的时间复杂度都是 阅读全文
posted @ 2025-05-15 20:48
kuki'
阅读(34)
评论(0)
推荐(0)
摘要:
HashMap将数据以键值对的形式存储,是线程不安全的。 HashMap的底层实现? 数组+链表+红黑树 JDK8 引入了红黑树(Red-Black Tree),链表长度超过8时,会将链表转换为红黑树,来提高在链表长度较长时的查找性能。 总结:java8 使用数组+链表 或红黑树(链表超过8会转为红 阅读全文
posted @ 2025-05-15 19:26
kuki'
阅读(29)
评论(0)
推荐(0)
摘要:
常用的有 HashMap, LinkedHashMap, TreeMap, ConcurrentHashMap 对于不需要排序的场景,优先考虑HashMap, 它是性能最好的Map实现。 如果需要保证线程安全,可以使用ConcurrentHashMap。 它的性能好于Hashtable,因为它在pu 阅读全文
posted @ 2025-05-15 18:05
kuki'
阅读(30)
评论(0)
推荐(0)

浙公网安备 33010602011771号