参考答案
结论:vector是封装动态数组的序列容器,底层连续内存,容量不足时按倍数扩容。要点:1.底层通常用三个指针:start(首)、finish(尾后)、end_of_storage(容量尾后)维护;2.扩容机制:当size==capacity时,申请新内存(常见2倍或1.5倍),拷贝旧元素到新空间,释放原内存,更新指针;3.性能:push_back均摊O(1),随机访问O(1);4.示例:reserve(n)预分配可减少拷贝;5.对比:list节点离散,deque分块连续。原理:连续内存支持指针算术,扩容代价由均摊分析抵消。