STL与泛型编程 -- 第二周学习笔记(Boolan)

本周主要是讲解了容器list的使用函数

 List是一种可在常数时间内在任何位置执行插入和删除操做的顺序容器。list是双向链表,其迭代器是双向的。与其余顺序容器(array, vector, deque)相比,list容器在任意位置执行插入、提取、和移动元素的操做更高效,但它不能经过在容器中的位置直接获取元素。排序

list主要拥有这些功能rem

c.rbegin()      返回逆向链表的第一个元素,即c链表的最后一个数据。回调函数

c.rend()      返回逆向链表的最后一个元素的下一个位置,即c链表的第一个数据再往前的位置。class

c.front()      返回链表c的第一个元素。容器

c.back()      返回链表c的最后一个元素。List

c.insert(pos,num)      在pos位置插入元素num。迭代器

c.insert(pos,n,num)      在pos位置插入n个元素num。链表

c.insert(pos,beg,end)      在pos位置插入区间为[beg,end)的元素。数据

c.push_back(num)      在末尾增长一个元素。

c.pop_back()      删除末尾的元素。

c.push_front(num)      在开始位置增长一个元素。

c.pop_front()      删除第一个元素。

c1.swap(c2);      将c1和c2交换。

swap(c1,c2);      同上。

c1.merge(c2)      合并2个有序的链表并使之有序,重新放到c1里,释放c2。

c1.merge(c2,comp)      合并2个有序的链表并使之按照自定义规则排序以后重新放到c1中,释放c2。

remove(num)             删除链表中匹配num的元素。

remove_if(comp)       删除条件知足的元素,参数为自定义的回调函数。

c.sort()       将链表排序,默认升序

c.sort(comp)       自定义回调函数实现自定义排序

相关文章
相关标签/搜索