list是顺序容器,是双向链表的实现,每一个元素都有指向它前面和后面的指针。
构造函数和大多数成员函数和vector
相似。
成员函数或成员函数模板 | 作 用 |
---|---|
void push_front(const T & val) | 将 val 插入链表最前面 |
void pop_front() | 删除链表最前面的元素 |
void sort() | 将链表从小到大排序,stl中的sort 函数序号随机访问迭代器,而list没有,所以提供了这个成员函数 |
void remove (const T & val) | 删除和 val 相等的元素 |
remove_if | 删除符合某种条件的元素 |
void unique() | 删除所有和前一个元素相等的元素,,如果不在一起不会删除 |
void merge(list & x) | 将链表 x 合并进来并清空 x。要求链表自身和 x 都是有序的,这样合并之后也是有序的 |
void splice(iterator i, list & x, iterator first, iterator last) | 在位置 i 前面插入链表 x 中的区间 [first, last),并在链表 x 中删除该区间。链表自身和链表 x 可以是同一个链表,只要 i 不在 [first, last) 中即可 |