//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)的更多相关文章

  1. 8、泛型程序设计与c++标准模板库2、c++标准模板库中的容器

    顺序容器类以逻辑线性排列方式存储元素,在这些容器类型中的元素在逻辑上被认为是连续的存储空间中存储的.顺序容器可用于存储线性群体. 在关联容器类中,元素的存储和检索基于关键字和元素与其他元素之间的关系, ...

  2. 标准模板库中的栈(stack)

    ////C++数据结构与算法(第4版) Adam Drozdek 著  徐丹  吴伟敏<<清华大学出版社>> STL中的通用栈类实现为容器适配器:使用以指定方式运行的容器.栈容 ...

  3. STL(标准模板库) 中栈(stack)的使用方法

    STL 中栈的使用方法(stack) 基本操作: stack.push(x)  将x加入栈stack中,即入栈操作 stack.pop()  出栈操作(删除栈顶),只是出栈,没有返回值 stack.t ...

  4. 标准模板库中的优先队列(priority_queue)

    //C++数据结构与算法(第4版) Adam Drozdek 著  徐丹  吴伟敏<<清华大学出版社>> #include<queue> priority_queu ...

  5. 标准模板库中的队列(queue)

    //C++数据结构与算法(第4版) Adam Drozdek 著  徐丹  吴伟敏<<清华大学出版社>> 队列容器默认由deque实现,用户也可以选择list容器来实现.如果用 ...

  6. 标准模板库中的向量(vector)

    //C++数据结构与算法(第4版) Adam Drozdek 著  徐丹  吴伟敏<<清华大学出版社>> 头文件:#include<vector> 向量是最简单的S ...

  7. 8、泛型程序设计与c++标准模板库4.标准c++库中的算法

    标准c++算法是通过迭代器和模板来实现的,其实算法本身就是一种函数模板. 算法从迭代器那里获得一个元素,而迭代器则知道一个元素在容器中的什么位置.迭代器查找元素的位置并将这些信息提供给算法以便算法能够 ...

  8. C++的标准模板库STL中实现的数据结构之顺序表vector的分析与使用

    摘要 本文主要借助对C++的标准模板库STL中实现的数据结构的学习和使用来加深对数据结构的理解.即联系数据结构的理论分析和详细的应用实现(STL),本文是系列总结的第一篇,主要针对线性表中的顺序表(动 ...

  9. C++标准模板库(STL)和容器

    1.什么是标准模板库(STL)? (1)C++标准模板库与C++标准库的关系 C++标准模板库其实属于C++标准库的一部分,C++标准模板库主要是定义了标准模板的定义与声明,而这些模板主要都是 类模板 ...

随机推荐

  1. C语言:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删去,-将a所指字符串中的字符和b所指字符串中的字符的顺序交叉,-将形参s所指字符串中的所有数字字符顺序前移,

    //函数fun功能:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删去,s所指串中剩余的字符形成的新串放在t所指的数组中. #include <stdio.h> #include ...

  2. 主机与虚拟机连接,主机能ping通虚拟机虚拟机ping不通主机问题

    事件描述: 从物理主机ping虚拟机时,能正常返回信息.反之,从虚机ping物理主机时返回信息:Destination Host unreachable.   解决方法: 首先,是因为默认创建的虚拟机 ...

  3. 201771010135杨蓉庆《面向对象程序设计(java)》第六周学习总结

    实验六 继承定义与使用 1.实验目的与要求 (1) 理解继承的定义: (2) 掌握子类的定义要求 (3) 掌握多态性的概念及用法: (4) 掌握抽象类的定义及用途: (5) 掌握类中4个成员访问权限修 ...

  4. 一个arctan积分的两种解法

    \[\Large\int_{0}^{1}\frac{\arctan x}{\sqrt{1-x^{2}}}\mathrm{d}x\] \(\Large\mathbf{Solution:}\) 首先第一种 ...

  5. java中静态初始化块的执行顺序

    在java中,其应该是先于所有的方法执行. 下面是测试代码: public class Test1 { static{ System.out.println("执行静态初始化块test1.. ...

  6. XC1263 签到题(哇 ,写得我怀疑人生啊!!!@!@)

    1263: 签到题 时间限制: 1 Sec  内存限制: 128 MB提交: 174  解决: 17 标签提交统计讨论版 题目描述 大家刚过完寒假,肯定还没有进入状态,特意出了一道签到题给各位dala ...

  7. vue 组件,以及组件的复用

    有时候代码的某一模块可能会经常使用到,那么完全可以把这一模块抽取出来,封装为一个组件,哪里需要用到的时候只需把模块调用即可 .参考vue官方 https://cn.vuejs.org/v2/guide ...

  8. Linux 命令中 find 和 xargs 命令的用法

    find 命令(一) find 命令主要作用是沿着文件层次结构向下遍历,匹配符合条件的文件,并执行相应的操作.Linux 下 find 命令提供了相当多的查找条件,功能很强大,对应的学习难度也比较大. ...

  9. 20199317 myod实验

    myod实验 实验内容: 1 复习c文件处理内容 2 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能 3 main与其他分开,制作静态库和动态库 4 编写Mak ...

  10. Elasticsearch 6.8.4 启动报错解决方法

    运行环境:centos 7,jdk 1.8 问题一: ERROR: bootstrap checks failed max ] ] 原因:无法创建本地文件问题,用户最大可创建文件数太小 解决方案:切换 ...