请详细说明 C++ vector 的扩容机制,包括扩容倍数、扩容依据、等长扩容、倍增扩容及高倍扩容的影响。
考察说明
考察 STL 容器动态数组扩容原理及其对性能与内存的影响
回答思路
- 能准确说出常见实现下倍增扩容的倍数(如 2 倍或 1.5 倍)
- 能说明扩容触发条件为 size 达到 capacity 上限
- 能分析等长扩容与倍增扩容的时间复杂度差异
- 能讨论高倍扩容带来的内存浪费与拷贝/移动成本
- 能联系实际场景说明扩容策略选择对性能的影响
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。