如何实现随机访问:
什么是数组:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有类型的数据。
线性表:每个线性表上最多只有前和后两个方向。线性表结构包含数组、链表、队列、栈等。与之对应的是非线性表,比如二叉树、堆、图
<strong> 连续的内存空间和相同类型的数据 </strong>
面试题:数组和链表的区别
- 答:链表适合插入、删除,时间复杂度O(1),数组适合随机访问,根据下标的随机访问的时间复杂度为O(1).
插入与删除的复杂度分析
- 思考:数组插入元素如何优化
- 思考:数组删除元素如何优化
- JVM标记清除垃圾回收算法的核心思想?
容器能否完全替代数组?
- Java ArrayList无法存储基本类型,比如int、long,需要封装为Integer、Long类,而Autoboxing、Unboxing则有一定的性能消耗。特别关注性能,考虑数组
- 表示多维数组时,数组更加直观