数据结构笔记: 数组

如何实现随机访问:

  • 什么是数组:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有类型的数据。

  • 线性表:每个线性表上最多只有前和后两个方向。线性表结构包含数组、链表、队列、栈等。与之对应的是非线性表,比如二叉树、堆、图

  • 连续的内存空间和相同类型的数据

面试题:数组和链表的区别

  • 答:链表适合插入、删除,时间复杂度O(1),数组适合随机访问,根据下标的随机访问的时间复杂度为O(1).

插入与删除的复杂度分析

  • 思考:数组插入元素如何优化
  • 思考:数组删除元素如何优化
  • JVM标记清除垃圾回收算法的核心思想?

容器能否完全替代数组?

    1. Java ArrayList无法存储基本类型,比如int、long,需要封装为Integer、Long类,而Autoboxing、Unboxing则有一定的性能消耗。特别关注性能,考虑数组
    1. 表示多维数组时,数组更加直观

你可能感兴趣的:(数据结构笔记: 数组)