跳转到内容

数组、链表与动态数组

数组随机访问 O(1) 但插入 O(n),链表相反;动态数组通过倍增实现摊还 O(1) 追加。本章结合缓存局部性解释为什么现代硬件上数组几乎总是赢,以及链表仍然有用的场景。

  • 倍增策略的摊还分析
  • 链表的每次跳转都是一次潜在的缓存未命中
  • 双端队列与环形缓冲区