目录
栈具有先进后出的特性,最先进入的数据压在最底下,最后出来
list链表容器是一种双向链表,两端都可插入与删除,是双向访问迭代器,与vertor随机访问迭代器有不同的区别
reverse()函数可以将元素反转过来
- #include
- #include
//头文件 - #include
- using namespace std;
- void printlist(list<int> &s)
- {
- list<int>::iterator it=s.begin();
- for( ;it!=s.end();it++)
- {
- cout<<*it<<" ";
- }
- cout<
- }
- int main()
- {
- list<int> s;
- s.push_back(10);//尾插
- s.push_back(20);
- s.push_back(30);
- s.push_front(40);//头插
- s.push_front(50);
- s.push_front(60);
- printlist(s);
-
- list<int>::iterator it=s.begin();
- it++;
- it++;
- //双向迭代器不支持 +2
- //s.insert(s.begin()+2,3,100); 错误写法
- s.insert(it,3,100);//插入
- printlist(s);
-
- //STL提供的算法只支持随机访问迭代器,而list是双向访问迭代器,标准算法不支持
- //sort(s.begin(),s.end()); 错误写法
-
- s.sort(); //链表类模板提供了sort()
- printlist(s);
-
- s.reverse();// 将元素反转
- printlist(s);
- return 0;
- }