首页 > 其他 > 详细

STL list

时间:2021-01-29 16:36:14      阅读:23      评论:0      收藏:0      [点我收藏+]

list

#include<list>

构造

list<int> c0;                       //空链表
list<int> c1(3);                    //建一个含3个默认值是0的元素的链表
list<int> c2(5,2);                  //建一个含5个元素的链表,值都是2
list<int> c4(c2);                   //复制
list<int> c5(beg,end);              //区间[beg, end)做为元素初值

成员函数

//非变动性操作
empty()             //判断是否为空
size()              //有效元素个数
resize(n)           //重置有效元素个数
max_size()          //返回容器最大的可以存储的元素
c1 == c2            //判断c1 是否等于c2,类似略
//赋值
c1 = c2             //复制
assign(n, elem)     //复制n个elem
assign(beg, end)    //将区间[beg;end)内的元素赋值给c
swap(c1, c2);       //交换两个list   
//元素存取
front()             //首元素
back()              //尾元素
//迭代器
list<T>::iterator it;
c.begin()  
c.end()   
c.rbegin()          //逆向链表的第一个元素,即c链表的最后一个数据。
c.rend()            //返回逆向链表的最后一个元素的下一个位置,即c链表的第一个数据再往前的位置。it++
//增删
push_front()        //首加
pop_front()         //首删
push_back()         //尾加
pop_back()          //尾删
insert(pos,num)     //在pos位置插入元素num,返回新元素位置
insert(pos,n,elem)  //在pos位置上插入n个elem副本,无返回值
insert(pos,beg,end) //在pos位置上插入区间[beg,end)内的所有元素的副本,没有返回值
erase(pos)       //删除pos位置的元素,返回下一个元素的位置
erase(beg,end)	    //移除[beg, end)区间内的所有元素,返回下一个元素的位置
remove(num)         //删除链表中匹配num的元素
remove_if(cmp)      //删除条件满足的元素,参数为自定义的回调函数
clear()             //清空
//其他
sort()              //单链表排序
sort(cmp)           //自定义顺序
unique()            //去重,要先排序
c1.merge(c2)        //合并2个有序的链表并使之有序,从新放到c1里,释放c2
c1.merge(c2,cmp)    //合并2个有序的链表并使之按照自定义规则排序之后从新放到c1中,释放c2
reverse()           //反转
splice()

STL list

原文:https://www.cnblogs.com/znk97/p/14345267.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!