list_01
双向链表
不支持随机存取([?] / 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的更多相关文章
- 2016/12/30_Python
今天主要学习内容: Python: 1.字典的使用 1)怎么创建字典 dicts = {"name":"juncx","age":17} d ...
- 记录一次bug解决过程:规范变量名称和mybatis的使用以及代码优化
一.总结 Mybatis中当parameterType为基本数据类型的时候,统一采用_parameter来代替基本数据类型变量. Mybatis中resultMap返回一个对象,resultType返 ...
- 记录一次bug解决过程:可维护性和性能优化
一.总结 使用某些变量的地方在2次以上的,强烈建议使用枚举值来维护变量,日后方便扩展. 查数据库的方法调用,能合并就净量去合并. 二.Bug描述 枚举变量的维护以及方法使用: public class ...
- C++ Template Operator
#include <iostream> #include <string> #include <deque> #include <stdexcept> ...
- 腾讯TGideas语义化标签(转)
--------引子--------------- 家里有个熊孩子,经常会有一些意想不到的事情发生:回家的时候,他会笑呵呵冲过来,大声喊着“臭爸爸”:你让他把鞋穿上,他会提起鞋子往楼下扔...在小孩的 ...
- C++ Template 编程,泛型编程练习
#include <iostream> #include <string> #include <deque> #include <stdexcept> ...
- 11.23CSS笔记
每一步的编写过程都在代码里面书写了,暂且记录下来 <!DOCTYPE html> <html lang="en"> <head> <met ...
- 11.21 CSS学习-上午
font-family:设置文本的字体序列,应当多设置几个,作为后备机制,如果浏览器不支持第一种字体,它将尝试下一种字体.字体序列的名字超过一个字需要使用引号,多个字体序列用逗号分隔指明:{font- ...
- R基础-适合于纯小白
#说明 文中‘test’均为模拟名称,原始编码为GKB方式###1.R语言介绍#### 偏统计 ###2.Rstudio和R的基本操作#### #2.1查看R语言自带的数据集#### data() # ...
随机推荐
- B*树的定义
B*树是B+树的变体,在B+树的非根和非叶子结点再增加指向兄弟的指针: B*树定义了非叶子结点关键字个数至少为(2/3)*M,即块的最低使用率为2/3(代替B+树的1/2). 所以,B*树分配新结点的 ...
- Fiddler抓包域名过滤
Fiddler抓包域名过滤 我们在用Fiddler抓包的时候会抓到很多不需要的数据包,我们怎样才能过滤掉不想要的域名只显示自己想要的域名? 通过Fiddler域名过滤可以解决这一问题! 下面是只显示想 ...
- ts实战项目启动中遇到的问题
项目链接:https://github.com/Jiasm/typescript-example 储备知识须知: sequelize入门篇 : 依照README执行以下操作: npm i brew s ...
- c#中WMI 中的日期和时间转为本地时间
取得的值:CreationDate:20170122084915 .713600+480 转: var objQuery = new ObjectQuery("select * from ...
- 《ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs》
代码: keras:https://github.com/phdowling/abcnn-keras tf:https://github.com/galsang/ABCNN 本文是Wenpeng Yi ...
- source的简单操作
source五部曲 git工作流:建立新功能 更改文件后,提交 点击git工作流完成新功能 点击推送 点击拉取
- Trove系列(八)——Trove的配置管理相关的功能介绍
概述MySQL 配置管理功能允许Trove 用户重载由Trove服务的操作者提供的缺省MySQL配置环境.这是通过影响MySQL 的includedir 命令来实现的.这些MySQL 的include ...
- 20155333 2016-2017-2 《Java程序设计》第九周学习总结
20155333 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity) 驱动的四种类型 JDBC- ...
- Java一元操作符++详解
废话不多说,直接上代码. package com.coshaho.learn; /** * * OperatorLearn.java Create on 2016-11-13 下午8:38:15 * ...
- docker简单操作
下载镜像docker pull httpd(镜像名) 查看镜像:docker images 做容器 docker run -ti -v(映射)/www:发布目录的路径 -p 80:80 --name ...