简述 ArrayList 与 LinkedList 的底层实现以及常见操作的时间复杂度
# 简述 ArrayList 与 LinkedList 的底层实现以及常见操作的时间复杂度
ArrayList | LinkedList | |
---|---|---|
线程安全 | 不安全 | 不安全 |
底层结构 | Object 数组 | 双向链表 |
适用场景 | 按照数组下表快速访问元素 时间复杂度就是 O(1) | 顺序访问元素 |
不适用场景 | 在指定位置n插入、删除, 会导致位置n后面的元素移动 时间复杂度就是 O(n-1) | 随机访问元素 |
编辑 (opens new window)
上次更新: 2022/05/19, 21:26:01