标准模板库中的链表(list)
//C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>>
头文件:include<list>
list() 创建一个空链表
list(size_type n, const T& el=T()) 创建一个链表,其中包含el的n个副本
list(iterator first, itsrator last) 创建一个链表,其中包含迭代器first及last所指范围内的元素
list(const list<T>& lst) 复制构造函数
void assign(iterator first, iterator last) 删除链表中所有的节点,并在迭代器first和last所指出的范围内插入元素
void assign(size_type n, el const T& el=T()) 删除链表中的所有节点,并在其中插入el的n个副本(如果没有提供el,就使用默认构造函数T())
T& back() 返回链表最后一个节点中的元素
const T& back() const 返回链表最后一个节点中的元素
iterator begin() 返回引用链表中第一个节点的迭代器
iterator end() 返回一个迭代器,该迭代器指向链表最后一个节点之后的位置
const_iterator begin() const 返回引用链表中第一个节点的迭代器
const_iterator end() const 返回一个迭代器,该迭代器指向链表最后一个节点之后的位置
void clear() 删除链表中的所有节点
bool empty() const 如果链表中不包含元素返回true,否则返回false
iterator erase(iterator i) 删除迭代器i所引用的节点,返回一个迭代器,该迭代器指向被删除节点之后的元素
T& front() 返回链表中第一个节点中的元素
const T& front() const 返回链表中第一个节点中的元素
iterator insert(iterator i, const T& el=T()) 在迭代器i引用的节点之前插入el,并返回引用新节点的迭代器
void insert(iterator i, size_type n,const T& el) 在迭代器i引用的节点之前插入el的n个副本
void insert(iterator i, iterator first,iterator last) 在迭代器i引用的节点前,插入first到last位置中的元素
size_type max_size() const 返回链表的最大节点数
void merge(list<T>& lst) 对有序表和lst,,从lst中删除全部节点,并将其有序的插入到当前链表中
void merge(list<T>& lst, Com pf) 对有序链表和lst,从lst中删除全部节点,并以函数f()指定的顺序将其插入到当前链表中
void pop_back() 删除链表的最后一个节点
void pop_fornt() 删除链表的第一个节点
void push_back(constT& el) 在链表尾插入el
void push_fornt(const T& el) 在链表头插入el
void remove(const T& el) 从链表中删除包含el的全部节点
void remove_if(Pred f) 删除使布尔函数f返回true的节点,f()具有一个参数
void resize(size_type n,const T& el=T()) 添加n-size()个包含元素el的节点,或者从链表尾部删除多余的size()-n个节点,使链表具有n个节点
void reverse() 反转链表
reverse_iterator rbegin() 返回引用链表中最后一个节点的迭代器
const_reverse_iterator rbegin() const 返回引用链表中最后一个节点的迭代器
reverse_iterator rend() 返回位于链表第一个节点之前的迭代器
const_reverse_iterator rend() const 返回位于链表第一个节点之前的迭代器
size_type size() const 返回链表中节点的数目
void sort() 将链表中的元素按照升序排列
void sort(Comp f) 按照单参数Boolean函数f()指定的顺序对链表中的元素进行排序
Void splice(iterator i, list<T>& lst,iterator j) 从链表lst中删除迭代器j所引用的节点,并将其插入到迭代器i所引用的位置之前
void splice(iterator i, list<T>& lst, iterator first, iterator last) 从链表lst中删除迭代器first和last所指范围内的节点,并将其插入到迭代器i所引用的位置之前
void swap(list<T>& lst) 将链表的内容与另一个链表lst的内容交换
void unique() 从有序链表中删除重复的元素
void unique(Comp f) 从有序链表中删除由Boolean函数f()指定的重复元素,f()具有两个参数
标准模板库中的链表(list)的更多相关文章
- 8、泛型程序设计与c++标准模板库2、c++标准模板库中的容器
顺序容器类以逻辑线性排列方式存储元素,在这些容器类型中的元素在逻辑上被认为是连续的存储空间中存储的.顺序容器可用于存储线性群体. 在关联容器类中,元素的存储和检索基于关键字和元素与其他元素之间的关系, ...
- 标准模板库中的栈(stack)
////C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>> STL中的通用栈类实现为容器适配器:使用以指定方式运行的容器.栈容 ...
- STL(标准模板库) 中栈(stack)的使用方法
STL 中栈的使用方法(stack) 基本操作: stack.push(x) 将x加入栈stack中,即入栈操作 stack.pop() 出栈操作(删除栈顶),只是出栈,没有返回值 stack.t ...
- 标准模板库中的优先队列(priority_queue)
//C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>> #include<queue> priority_queu ...
- 标准模板库中的队列(queue)
//C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>> 队列容器默认由deque实现,用户也可以选择list容器来实现.如果用 ...
- 标准模板库中的向量(vector)
//C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>> 头文件:#include<vector> 向量是最简单的S ...
- 8、泛型程序设计与c++标准模板库4.标准c++库中的算法
标准c++算法是通过迭代器和模板来实现的,其实算法本身就是一种函数模板. 算法从迭代器那里获得一个元素,而迭代器则知道一个元素在容器中的什么位置.迭代器查找元素的位置并将这些信息提供给算法以便算法能够 ...
- C++的标准模板库STL中实现的数据结构之顺序表vector的分析与使用
摘要 本文主要借助对C++的标准模板库STL中实现的数据结构的学习和使用来加深对数据结构的理解.即联系数据结构的理论分析和详细的应用实现(STL),本文是系列总结的第一篇,主要针对线性表中的顺序表(动 ...
- C++标准模板库(STL)和容器
1.什么是标准模板库(STL)? (1)C++标准模板库与C++标准库的关系 C++标准模板库其实属于C++标准库的一部分,C++标准模板库主要是定义了标准模板的定义与声明,而这些模板主要都是 类模板 ...
随机推荐
- Vue-路由模式 hash 和 history
Vue 为了构建 SPA(单页面应用),需要引入前端路由系统,这也就是 Vue-Router 存在的意义.前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求. 创建的项目默认是hash模式 ...
- C:sizeof 运算符
sizeof不是函数,所以不需要包含任何头文件,它的功能是计算一个数据类型的大小,单位为字节 sizeof的返回值为size_t size_t类型在32位操作系统下是unsigned int,是一个无 ...
- 吴裕雄--天生自然Numpy库学习笔记:NumPy 副本和视图
副本是一个数据的完整的拷贝,如果我们对副本进行修改,它不会影响到原始数据,物理内存不在同一位置. 视图是数据的一个别称或引用,通过该别称或引用亦便可访问.操作原有数据,但原有数据不会产生拷贝.如果我们 ...
- Android开发Intent应用概述
原文: http://bbs.gfan.com/android-93448-1-1.html 今天,我们来研究一下Intent,没错,就是前面说过的比较难理解的那个东西,希望通过这篇文章之后,你发现前 ...
- Linux 命令中 find 和 xargs 命令的用法
find 命令(一) find 命令主要作用是沿着文件层次结构向下遍历,匹配符合条件的文件,并执行相应的操作.Linux 下 find 命令提供了相当多的查找条件,功能很强大,对应的学习难度也比较大. ...
- springboot集成过滤器
封装自定义接口filter 包含两个方法,第一个过滤的路径数组,第二个为过滤器执行的顺序.spring boot 会按照order值的大小,从小到大的顺序来依次过滤. package com.thee ...
- Python - 编程技巧,语法糖,黑魔法,pythonic
参考,搬运 http://python-web-guide.readthedocs.io/zh/latest/idiom/idiom.html 待定 1. Python支持链式比较 # bad a = ...
- golang 中的引号
前言 go中的单引号',双引号",反引号`,他们用法的区别. 需要先了解字符编码的区别,由来. 单引号 单引号里面只能有一个字符,一般只能用来包裹一个字节的ASCII码字符.他的类型是Gol ...
- MFC TreeControl简单应用
目录 1. TreeControl添加节点 2. TreeControl菜单 3. TreeControl修改节点 4. TreeControl查找节点 5. TreeControl折叠展开节点 6. ...
- RedHat OpenShift QuickStart 1.2
一.在容器中传入/出文件 1. 创建一个初始化项目 oc login -u developer -p developer oc new-project myproject 2. 在容器中下载文件 先通 ...