cb01a_c++_数据结构_顺序容器_STL_deque类
/*cb01a_c++_数据结构_顺序容器_STL_deque类
deque是一个动态数组,比vector更加灵活.两者都属于动态数组
deque与vector非常类似
deque可以在数组开头和末尾插入和删除数据
vector只能在数组的末尾插入和删除数据
distance算法
size_t nOffset = distance(a.begin(),iElementLocater);//计算a.begin()与iElementLocator之间的距离
a.begin()位置不变,iElementLocator在变化,所以就可以用在做下标。
*/
/*cb01a_c++_数据结构_顺序容器_STL_deque类
deque是一个动态数组,比vector更加灵活.两者都属于动态数组
deque与vector非常类似
deque可以在数组开头和末尾插入和删除数据
vector只能在数组的末尾插入和删除数据 distance算法
size_t nOffset = distance(a.begin(),iElementLocater);//计算a.begin()与iElementLocator之间的距离
a.begin()位置不变,iElementLocator在变化,所以就可以用在做下标。
*/ #include <iostream>
#include <deque>
#include <algorithm>//算法 using namespace std; int main()
{
deque<int> a;
a.push_back();
a.push_back();
a.push_back();
a.push_front();
a.push_front();
a.push_front(); for (size_t nCount = ; nCount < a.size(); ++nCount)
{
cout <<"a["<<nCount<<"]=" << a[nCount] << endl;
}
//
cout << endl; a.pop_front();//删除前面的数据
a.pop_back();//删除后面的数据
for (size_t nCount = ; nCount < a.size(); ++nCount)
{
cout << "a[" << nCount << "]=" << a[nCount] << endl;
} cout <<"使用distance算法"<< endl;
//使用deque的迭代器,没有下标
deque<int>::iterator iElementLocater;
for (iElementLocater = a.begin(); iElementLocater != a.end(); ++iElementLocater)
{
size_t nOffset = distance(a.begin(),iElementLocater);//计算a.begin()与iElementLocator之间的距离
cout << "a[" << nOffset << "]=" <<*iElementLocater << endl;
} return ;
}
cb01a_c++_数据结构_顺序容器_STL_deque类的更多相关文章
- cb02a_c++_数据结构_顺序容器_STL_list类_双向链表
/*cb02a_c++_数据结构_顺序容器_STL_list类_双向链表实例化std::list对象在list开头插入元素在list末尾插入元素在list中间插入元素,插入时间恒定,非常快.数组:中间 ...
- cb03a_c++_数据结构_顺序容器_STL_stack
/*cb03a_c++_数据结构_顺序容器_STL_stack堆栈:LIFO--Last In First Out后进先出,用于系统程序设计自适应容器(容器适配器),不是独立的容器,是一个适配器栈适配 ...
- C _数据结构 _线性表的顺序存储
#ifndef __MY_SEQLIST_H__ #define __MY_SEQLIST_H__ typedef void SeqList; typedef void SeqListNode; // ...
- 中软酒店管理系统CSHIS操作手册_数据结构_数据字典
https://wenku.baidu.com/view/f6ca11f5ee06eff9aef807cb.html
- cb16a_c++_顺序容器的选用_排序_二分查找
/*cb16a_c++_顺序容器的选用_排序_二分查找顺序容器: 1.vector的优点与缺点 vector优点:排序利用下标,快速排序,做二分查找非常快 2.list的优点与缺点 list优点:插入 ...
- cb06a_c++_顺序容器的定义
/*cb06a_c++_顺序容器的定义顺序容器:vector,数组,尾端操作数据,快速随机访问list 链表,快速插入数据deque数组,双端-首尾操作数据,方便两端的数据访问 顺序容器适配器:sta ...
- cb22a_c++_标准模板库_STL_map_multimap红黑树(数据结构)关联容器
cb22a_c++_标准模板库_STL_map_multimap红黑树(数据结构)关联容器map(映射,key不能重复,一对一对的,value_type(1, "one")),mu ...
- cb14a_c++_顺序容器的操作7_赋值与交换(swap)_vector转list
cb14a_c++_顺序容器的操作7_赋值与交换(swap) vector数据赋值给list, slist.assign(svec.begin(), svec.end());//这样可以转 svec- ...
- ca13a_c++_顺序容器的操作6删除元素
/*ca13a_c++_顺序容器的操作6删除元素c.erase(p) //删除迭代器p指向的位置c.erase(b,e) //删除b to e之间的数据,迭代器b包括,e不包括c.clear()//删 ...
随机推荐
- 安装依赖jdk---linux
1,下载JDK http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2,使用XFTP ...
- 3D视觉基础(基本原理及3D传感器基本参数)
本人所在行业属于3D视觉方向,因此最近也是学习了很多3D视觉的知识,这次专门总结一下. 传统工业机器视觉中,2D指的是X方向加Y方向,那么3D视觉自然就是加了一个Z方向.目前我接触到的公司产品是3D激 ...
- sql-分组查询
分组查询: 关键字:group by 可以将查询结果分组,并返回行的汇总信息 注意: 1.出现在select后面的字段 要么是是聚合函数中的,要么就是group by 中的 2.要筛选结果 可以先使用 ...
- DevOps生命周期,你想知道的全都在这里了!
在大多数情况下,软件应用程序开发由于其规范性和复杂性而变得很耗时. 为了在短时间内交付高质量应用程序,软件开发人员正在遵循一套通用的实践,称为DevOps生命周期. 那么,DevOps在软件应用程序开 ...
- Chrome自带全网页截图
1.等待网页打开完毕 2.组合键 ctrl+shift+i 打开开发者工具 3.按 ctrl+shift+p 调出一个面板 4.输出 full 5.在下一行出现 capture full size s ...
- Rocket - util - Annotations
https://mp.weixin.qq.com/s/7C8ZmPpwAqFqyKjL9K40Fg 介绍util中定义的注解(Annotations). 1. Annotation ...
- Java实现 LeetCode 438 找到字符串中所有字母异位词
438. 找到字符串中所有字母异位词 给定一个字符串 s 和一个非空字符串 p,找到 s 中所有是 p 的字母异位词的子串,返回这些子串的起始索引. 字符串只包含小写英文字母,并且字符串 s 和 p ...
- SQL server 导入数据 (excel导入到SQL server数据库)
打开数据库SQL server ,右键数据库,任务,导入数据 点击下一步 选择数据源类型 选择路径,点击下一步 选择将要生成的类型 选择登陆方式 选中,点击下一步 点击编辑映射可以修改将要生成的表,点 ...
- Java实现字符串的包含
1 问题描述 给定一长字符串A和一短字符串B.请问,如何最快地判断出短字符串B中的所有字符是否都在长字符串A中?请编写一个判断函数实现此功能. 为简单起见,假设输入的字符串只包含小写英文字母.下面举几 ...
- java实现平面点最小距离
已知平面上若干个点的坐标. 需要求出在所有的组合中,4个点间平均距离的最小值(四舍五入,保留2位小数). 比如有4个点:a,b,c,d, 则平均距离是指:ab, ac, ad, bc, bd, cd ...