首页 > 编程语言 > 详细

C++STL list

时间:2018-09-13 10:15:01      阅读:186      评论:0      收藏:0      [点我收藏+]

list双向链表

高效进行插入删除数据

不可以随机存取元素,所以不支持at()和[]操作符。it可以++  --,不能it+5

节点序号从0开始

list<int> l;

l.push_back(1);//尾插法

it++;

it++;

l.inserrt(it,100);//在2号位置插入元素,原来的2号位置往后移

删除

list.clear();//删除所有元素

list.erase(beg,end);//删除区间[beg,end)内的数据(左闭右开区间),返回下一个数据的位置,

list.erase(beg,beg+3);//删除的是0、1、2三个元素

list.erase(pos);//删除pos位置的数据,返回下一个数据的位置

list.remove(elem);//删除容器中所有与elem值匹配的元素

 

 

结论

1.链表的节点序号是从0开始的,在2号位置插入元素,是让原来的2号变成3号,原来的3号变成4号

2.erase删除区间元素是左闭右开区间,list.erase(beg,beg+3);//删除的是0、1、2三个元素

 

C++STL list

原文:https://www.cnblogs.com/smh2015/p/9638565.html

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