ArrayList 和 LinkedList 有什么区别?
先自己想一想,再看参考要点
参考要点
- ArrayList 基于动态数组,随机访问快,中间插入删除要移动元素,但一次复制一整块连续内存
- LinkedList 基于双向链表,插入删除只改指针,但要先 O(N) 遍历到位置
- 实测 10 万个元素中间插入 1 万次,ArrayList 约 50 ms、LinkedList 约 0.8~1 秒,多数场景用 ArrayList
参考要点
学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。