数据结构 非受限线性表 顺序结构 数组 支持 O(1) 的随机访问 平均为 O(n) 的插入和删除 警惕越界错误,导致 Stack Over Flow 链式结构 单链表 不支持随机访问,需要遍历去访问结点 插入和删除只需要移动指针,时间复杂度为 O(1) 每个结点需要额外的空间存储指针,需要的内存比数组大 双链表 在单链表的基础上,除头结点外,每个结点多了一个存放前驱结点内存地址的指针 循环链表 尾节点指针指向头结点 静态链表 借助数组,伴随指向后继结点的指针 受限线性表 栈 顺序和链式都可以实现,先进后出 实际应用 浏览器的前进与后退 括号匹配 表达式计算