list即双向链表。
#include<iostream> #include<list> using namespace std; int main() { //构造 list<int> li; //插入元素 //头插 li.emplace_front(2); //尾插 li.emplace_back(8); //指定位置插入 li.insert(++li.begin(), 6); //遍历 for (list<int>::iterator it = li.begin(); it != li.end(); it++) cout << *it; cout << endl; //输出:268 //排序,不能使用头文件algorithm中的sort算法,使用list模板自定义的sort方法 li.sort(greater<int>()); //从大到小排序 for (list<int>::iterator it = li.begin(); it != li.end(); it++) cout << *it; cout << endl; //输出:862 li.emplace_back(2); li.emplace_back(6); li.emplace_back(8); //删除元素 //删除指定位置元素 li.erase(++li.begin()); //删除第二个元素'6' for (list<int>::iterator it = li.begin(); it != li.end(); it++) cout << *it; cout << endl; //输出:82268 //删除指定元素 li.remove(8); //删除元素'8' for (list<int>::iterator it = li.begin(); it != li.end(); it++) cout << *it; cout << endl; //输出:226 //删除连续的重复元素,只保留其中一个 li.unique(); //删除连续的重复元素'2',只保留其中一个 for (list<int>::iterator it = li.begin(); it != li.end(); it++) cout << *it; cout << endl; //输出:26 return 0; }