[STL]list
            时间:2014-01-14 19:31:50  
            收藏:0  
            阅读:700
        
        
        一.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是一个环状双向链表,并在尾端可以设置了一个空节点。如下图所示:

参考资料:
1.维基百科
2.《STL源码剖析》
原文:http://www.cnblogs.com/Rosanna/p/3512322.html
            评论(0)
        
        
        