c++ STL list容器成员函数】的更多相关文章

这是后进先出的栈,成员函数比较简单,因为只能操作栈顶的元素.不提供清除什么的函数. 函数 描述 bool s.empty() 栈是否为空(即size=0).若空,返回true,否则,false. void s.pop() 将栈顶的元素出栈,即删除最后进栈的元素. void s.push(新元素) 插入一个新元素到栈顶. int s.size() 返回栈中有多少个元素. 元素类型引用 s.top() 返回栈顶元素,不会删除.返回的是引用类型,即可以对该元素进行修改.若栈中为常量,则不能修改. sw…
map容器用于查找,设置键值和元素值,输入键值,就能得到元素值.map对象中的元素时刻都是有序的,除非无序插入的.它是用平衡树创建的.查找很快. 函数 描述,注意有r的地方都是不能用it代替的. map (comp,alloc) map (it first, it last, comp,alloc) map (map& x) Comp为比较函数,用于排序,alloc不用鸟它.两个参数有默认值,可不填,按默认的.创建空map. 用一段元素填充,并设置排序函数. 拷贝x中的元素并创建新map.估计新…
deque是双向队列,即可以在头部插入删除,也可以在尾部插入删除.内部并不连续,这一点和vector并不一样.可能第1个元素和第2个元素的地址是不连在一起的.在使用时用it迭代器会安全一点. 这是c++ 98标准的,不是c++11的.11标准新加的函数没在这里说明.里面大部分函数是经过测试的才得出的结论. 函数(下面将iterator简化为it) 描述 Void c.assign(it beg,it end)void c.assign(it n,元素类型  elem) 将拷贝[beg; end)…
list是一个双链表. 函数 描述 void l.assign (int n, const val) void l.assign (it first, it last) 将链表l初始化为n个相同的val元素. 将链表l初始化为从first到last指针所指向的这一段区域内的元素.It指针同l是一个类型的.方便将另一个链表中的某一段连续的元素copy到新链表. reference l.back () 返回最后一个元素.经测试,可以直接l.back()=元素. It l.begin() 返回第1个元…
Sequence containers Associative containers   Headers <vector> <deque> <list> <set>   <bitset> Members complex vector deque list set multiset map multimap bitset constructor * constructor constructor constructor constructor co…
c++ stl集合set介绍 c++ stl集合(Set)是一种包含已排序对象的关联容器.set/multiset会根据待定的排序准则,自动将元素排序.两者不同在于前者不允许元素重复,而后者允许. 1) 不能直接改变元素值,因为那样会打乱原本正确的顺序,要改变元素值必须先删除旧元素,则插入新元素 2) 不提供直接存取元素的任何操作函数,只能通过迭代器进行间接存取,而且从迭代器角度来看,元素值是常数 3) 元素比较动作只能用于型别相同的容器(即元素和排序准则必须相同) set模板原型://Key为…
STL区间成员函数及区间算法总结 在这里总结下可替代循环的区间成员函数和区间算法: 相比单元素遍历操作,使用区间成员函数的优势在于: 1)更少的函数调用 2)更少的元素移动 3)更少的内存分配 在区间成员函数不适用的情况下也应该使用区间算法,至少,相比手写循环而言,它更加简单,有效,并且不容易出错: 区间成员函数 区间构造 标准容器都支持区间构造函数: container::container(InputIterator begin, // 区间的起点 InputIterator end); /…
/ *最近ACM比赛,用到的时候忘记成员函数了,贼尴尬,给以后比赛做下准备 */ LIST: 构造函数 list<int> c0; //空链表 list<int> c1(3); //建一个含三个默认值是0的元素的链表 list<int> c2(5,2); //建一个含五个元素的链表,值都是2 list<int> c4(c2); //建一个c2的copy链表 list<int> c5(c1.begin(),c1.end()); ////c5含c1一…
容器的成员函数 vs 算法 容器中同名的函数 List: void remove(const T); template<class Comp> void remove_if(Comp); void unique(); template<class Comp> void unique(Comp); void sort(); template<class Comp> void sort(Comp); void merge(list&); template<cl…
STL容器能力一览表 Vector Deque List Set Multiset map Multimap 典型内部 结构 dynamic array Array of arrays Doubly Linked list Binary tree Binary tree Binary tree Binary tree 元素 Value Value Value Value Value Key/value pair Key/value pair 元素 可重复 是 是 是 否 是 对key而言否 是…