双向链表

不支持随机存取([?] / at(?))

A、头尾 添加/移除

  A.1、list::push_back(elemValue);

  A.2、list::pop_back();

  A.3、list::push_front(elemValue);

  A.4、list::pop_front();

B、随机存取

C、数据存取

  C.1、T list::front();

  C.2、T list::back();

1、构造函数

  1.1、默认构造函数 ==> 无参构造函数

  1.2、必定需要 复制构造函数 :list<T> lstT(const list& );

  1.3、list<T> lstT(iteratorBegin, iteratorEnd);  // 迭代器区间[iteratorBegin, iteratorEnd)拷贝给lstT

    注意: 这里可以传数组指针,数组指针在特定情况下可以当做迭代器使用

  1.4、list<T> lstT(n, elemValue);  // n个elemValue复制给lstT

2、赋值

  2.1、重载"="操作符

      list& = const list& vec;

  2.2、void list<T>::assign(beg, end);  // [beg, end)区间拷贝给

  2.3、void list<T>::assign(n, elemValue);// n个elemValue拷贝给

3、迭代器操作

  3.1、const_iterator list<T>::begin();  // 第1个

  3.2、const_iterator list<T>::end();  // 最后1个

  3.3、const_reverse_iterator list<T>::rbegin();  // 倒数第1个

  3.4、const_reverse_iterator list<T>::rend();  // 倒数最后1个

4、插入

  注意: 拷贝插入(ZC: 也就是说 插入容器的元素是 类实例的话,类必须提供复制构造函数)
  iterator list::insert(const_iterator, elemValue);       // 返回新元素的位置,拷贝插入
  void list::insert(const_iterator, size_type n, elemValue);
  void list::insert(const_iterator, iterator beg, iterator end); // [beg, end)区间

5、删除

  void list::clear();
  iterator list::erase(const_iterator beg, const_iterator end); // [beg, end)区间,返回下一个元素的位置
  iterator list::erase(const_iterator pos);           // 返回下一个元素的位置

  void list<T>::remove(elemValue); // 删除容器中 所有与elemValue值匹配的元素

6、交换

  void list<T>::swap(list<T>&);

7、大小

  size_type list<T>::size();
  bool list<T>::empty();
  void list<T>::resize(size_type);
  void list<T>::resize(size_type, elemValue);

8、查找

9、反序排列

  void list::reverse();

list_01的更多相关文章

  1. 2016/12/30_Python

    今天主要学习内容: Python: 1.字典的使用 1)怎么创建字典 dicts = {"name":"juncx","age":17} d ...

  2. 记录一次bug解决过程:规范变量名称和mybatis的使用以及代码优化

    一.总结 Mybatis中当parameterType为基本数据类型的时候,统一采用_parameter来代替基本数据类型变量. Mybatis中resultMap返回一个对象,resultType返 ...

  3. 记录一次bug解决过程:可维护性和性能优化

    一.总结 使用某些变量的地方在2次以上的,强烈建议使用枚举值来维护变量,日后方便扩展. 查数据库的方法调用,能合并就净量去合并. 二.Bug描述 枚举变量的维护以及方法使用: public class ...

  4. C++ Template Operator

    #include <iostream> #include <string> #include <deque> #include <stdexcept> ...

  5. 腾讯TGideas语义化标签(转)

    --------引子--------------- 家里有个熊孩子,经常会有一些意想不到的事情发生:回家的时候,他会笑呵呵冲过来,大声喊着“臭爸爸”:你让他把鞋穿上,他会提起鞋子往楼下扔...在小孩的 ...

  6. C++ Template 编程,泛型编程练习

    #include <iostream> #include <string> #include <deque> #include <stdexcept> ...

  7. 11.23CSS笔记

    每一步的编写过程都在代码里面书写了,暂且记录下来 <!DOCTYPE html> <html lang="en"> <head> <met ...

  8. 11.21 CSS学习-上午

    font-family:设置文本的字体序列,应当多设置几个,作为后备机制,如果浏览器不支持第一种字体,它将尝试下一种字体.字体序列的名字超过一个字需要使用引号,多个字体序列用逗号分隔指明:{font- ...

  9. R基础-适合于纯小白

    #说明 文中‘test’均为模拟名称,原始编码为GKB方式###1.R语言介绍#### 偏统计 ###2.Rstudio和R的基本操作#### #2.1查看R语言自带的数据集#### data() # ...

随机推荐

  1. oracle怎么恢复被覆盖的存储过程

    在oracle数据库中,如果覆盖了之前的存储过程,那得赶紧闪回,时长越长闪回的可能性越小. 原理很简单,存储过程的定义就是数据字典,修改数据字典跟修改普通表的数据没有区别,此时会把修改前的内容放到un ...

  2. SVN 取消版本控制并添加至忽略列表

    忽略已经版本控制的文件忽略文件和目录 起因: 由于项目中的IDE Jdeveloper在某些指定目录下面会生成server.xml以及common文件夹,且包含一个名为bc4j.xcfg的文件,每次当 ...

  3. How to install MVVM Light Toolkit via NuGet

    Here is how you can install MVVM Light Toolkit  via NuGet in an easy way using only Visual Studio. S ...

  4. 转载 vsftpd安装

    http://blog.csdn.net/shutfuckingup/article/details/8250290 1:安装vsftpd    yum install vsftpd 2:关闭防火墙 ...

  5. EL—表达式

    El的数据访问操作: 1:获取变量名(四大作用域中的变量?六大作用域?) 只能从这六个区域中拿数据!!! 2:获取对象的属性值 3:获取集合元素 4:执行表达式 1:获取变量名(四大作用域中的变量) ...

  6. VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)

    鸡啄米在上一节中讲了CFont字体类,本节主要讲解文本输出的方法和实例. 文本输出过程 在文本输出到设备以前,我们需要确定字体.字体颜色和输出的文本内容等信息.Windows窗口的客户区由应用程序管理 ...

  7. 把kafka数据从hbase迁移到hdfs,并按天加载到hive表(hbase与hadoop为不同集群)

    需求:由于我们用的阿里云Hbase,按存储收费,现在需要把kafka的数据直接同步到自己搭建的hadoop集群上,(kafka和hadoop集群在同一个局域网),然后对接到hive表中去,表按每天做分 ...

  8. 如何向GLSL中传入多个纹理

    http://blog.csdn.net/huawenguang/article/details/41245871 如何向GLSL中传入多个纹理 这几天在研究如何实现用GLSL对多个纹理进行融合处理, ...

  9. Python Web学习笔记之TCP/IP、Http、Socket的区别

    经常在笔试.面试或者工作的时候听到这些协议,虽然以前没怎么涉及过,但至少知道这些是和网络编程密不可分的知识,作为一个客户端开发程序员,如果可以懂得网络编程的话,他的作用和能力肯定会提升一个档次.原因很 ...

  10. 02: DOM 实例

    1.1 Event 对象 <body> <a id="myAnchor" href="http://www.microsoft.com"> ...