| 容器 | 優點 | 缺點 |
|---|---|---|
| vector | 動態增長、隨機訪問 O(1)、尾部增刪 O(1) | 中間增刪 O(n)、僅尾部高效增刪 |
| list | 任意位置增刪 O(1)、雙端增刪、內存精準無浪費 | 無隨機訪問、遍歷緩慢(緩存不友好) |
| deque | 隨機訪問、雙端增刪 O(1)、中間增刪較 vector 好 | 實現複雜、排序等算法不適用、常數因子大 |
| map | 鍵值映射、自動排序、查找/增刪 O(log n) | 僅適用鍵值場景、常數因子較大 |
vector::reserve() 預分配避免擴容拷貝。list::splice() O(1) 移動節點區間。deque 適合滑動窗口、BFS 隊列。unordered_map (C++11) 平均 O(1) 查找,無序場景首選。理解容器底層結構與操作複雜度,根據業務訪問模式選擇,是 C++ 高效編程的基礎功夫。