C++ STL List 容器详解
概述
STL 中的 list 是基于双向循环链表实现的序列容器。与 vector 不同,它不要求内存连续,因此在中间位置插入或删除元素时效率更高(O(1)),但随机访问能力较弱。

常用接口使用
构造函数与初始化
list 支持多种构造方式,包括空构造、指定数量构造、区间构造以及列表初始化。
// 空构造
list<int> l1;
// 构造包含 4 个值为 100 的 list
list<int> l2(4, 100);
// 用另一个 list 的区间构造
list<int> l3(l2.begin(), l2.end());
// 拷贝构造
list<int> l4(l3);
// 数组迭代器区间构造
int array[] = {16, 2, 77, 29};
list<int> l5(array, array + sizeof(array)/sizeof(int));
// C++11 列表初始化
list<int> l6{1, 2, 3, 4, 5};
迭代器操作
迭代器在 list 中类似于指针,指向节点。list 提供正向和反向迭代器。


