30
2020
01

抛开 HashMap,hash 冲突有那些解决办法?

- 开放定址,链地址法


1. 针对 HashMap 中某个 Entry 链太长,查找的时间复杂度可能达到 O(n),怎么优化?


    - 将链表转为红黑树, JDK1.8 已经实现了。


1. 数组和 ArrayList 的区别;


    1. 数组可以包含基本类型和对象类型,ArrayList 只能包含对象类型


    1. 数组大小固定,ArrayList 大小可以动态变化


    1. ArrayList 提供了更多的特性(`addAll`、`removeAll`)。


1. Arraylist 如何实现排序


    - `Collections.sort(List<T> list)`;


    - `sort(List<T> list, Comparator<? super T> c)`;

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。