首页 > 数据库技术 > 详细

[STL]list

时间:2014-01-14 19:31:50      阅读:697      评论:0      收藏:0      [点我收藏+]

一.list的成员函数

Iterators:

  • list.begin() 回传指向第一个元素的 Iterator。
  • list.end() 回传指向最末元素的下一个位置的 Iterator。
  • list.rbegin() 回传指向最末个元素的反向 Iterator。
  • list.rend() 回传指向第一个元素的前一个位置的反向 Iterator。

Capacity/Size:

  • list.empty() 若list内部为空,则回传true值。
  • list.size() 回传list内实际的元素个数。
  • lsit.resize() 重新分派list的长度。

Element Access

  • list.front() 存取第一个元素。
  • list.back() 存取最末个元素。

Modify methods

  • list.push_front() 增加一个新的元素在 list 的前端。
  • list.pop_front() 删除 list 的第一个元素。
  • list.push_back() 增加一个新的元素在 list 的尾端。
  • list.pop_back() 删除 list 的最末个元素。

Other

   迁移操作transfer:将某连续范围的元素迁移到某个特定位置之前。这个操作非常重要,为splice,sort,merge奠定了基础。

  • list.splice() 接合链表。
  • list.sort() 链表排序。list不能使用STL的sort(),因为list不支持随机存取,sort()只支持RamdonAccessIterator。
  • list.merge() 合并两个链表,两个lists必须有序
  • list.reverse() 翻转链表。

 

二.list的数据结构

      跟印象中不同的是,list是一个环状双向链表,并在尾端可以设置了一个空节点。如下图所示:

bubuko.com,布布扣

 

 

参考资料:

1.维基百科

2.《STL源码剖析》

[STL]list

原文:http://www.cnblogs.com/Rosanna/p/3512322.html

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