list,forward_list
list:双向链表
forward_list:单向链表
在任何位置添加元素,删除元素都很快,但随机访问元素则很慢
声明和初始化
list<T> l;
list<T> l(l1);
list<T> l=l1;
list<T> l={a1,a2,a3,...};
list<T> l{a1,a2,a3,...};
相关操作
insert(it,val) //插入元素需指明迭代器,在迭代器前插入元素
erase(it) //删除迭代器处的元素
find(itbegin,itend,val) //algorithm头文件中,查找元素,返回迭代器
学习代码
#include <iostream>
#include <list>
#include<forward_list>
#include<algorithm>
using namespace std;
int main()
{
list<int> li;
list<int>::iterator it = li.begin();
li.insert(it,);
li.push_back();
li.push_back();
li.push_front();
li.push_front();
li.push_front();
list<int>::iterator it3 = find(li.begin(),li.end(),);
li.erase(it3);
list<int>::iterator it2 = li.begin();
while (it2 != li.end())
{
cout << *it2 << endl;
++it2;
}
getchar();
return ;
}