deque!
deque:双端队列
比较常用的函数:
que.back() 返回容器que的最后一个元素的引用。如果que为空,则该操作未定义。
que.begin() 传回迭代器中的第一个数据地址。
que.clear() 移除容器中所有数据。
que.empty() 判断容器是否为空。
que.end() 返回一个迭代器,它指向容器que的最后一个元素的下一位置。
que.front() 返回容器que的第一个元素的引用。如果que为空,则该操作为空。
que.pop_back() 删除最后一个数据。
que.pop_front() 删除头部数据。
que.push_back(elem) 在尾部加入一个数据。
que.push_front(elem) 在头部插入一个数据。
que.size() 返回容器中实际数据的个数。
不是很常用的函数:
que.assign(beg,end) 将[beg; end)区间中的数据赋值给que。
que.assign(n,elem) 将n个elem的拷贝赋值给que。
que. at(idx) 传回索引idx所指的数据,如果idx越界,抛出out_of_range。
que.erase(pos) 删除pos位置的数据,传回下一个数据的位置。
que.erase(beg,end) 删除[beg,end)区间的数据,传回下一个数据的位置。
que.max_size() 返回容器que可容纳的最多元素个数。
que.insert(pos,elem) 在pos位置插入一个elem拷贝,传回新数据位置
que.insert(pos,n,elem) 在pos(迭代器)位置插入>n个elem数据。无返回值
que.insert(pos,beg,end) 在pos位置插入在[beg,end)区间的数据。无返回值
que.rbegin() 返回一个逆序迭代器,它指向容器que的最后一个元素。
que.rend() 返回一个逆序迭代器,它指向容器que的第一个元素的前一个位置。
que.resize(num) 重新指定队列的长度。
que.swap(que2) 交换容器que和que2中的所有元素。
deque!的更多相关文章
- c++容器(vector、list、deque)
vector ,deque 和 list 顺序性容器: 向量 vector : 是一个线性顺序结构.相当于数组,但其大小可以不预先指定,并且自动扩展.它可以像数组一样被操作,由于它的特性我们完全可 ...
- java三篇博客转载 详解-vector,stack,queue,deque
博客一:转载自http://shmilyaw-hotmail-com.iteye.com/blog/1825171 java stack的详细实现分析 简介 我们最常用的数据结构之一大概就是stack ...
- deque 居然已经实现了 insert 接口
最近有个开发需求,根据server传递来的广告位来展示某条广告. 但最终存储广告的数据结构是deque,里面存储的东西还是对象(stl 基于拷贝语义). 想了半天,在开头和结尾插入比较方便,在中间插入 ...
- HDU-4604 Deque DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4604 因为deque最后的数列是单调不降的,因此,我们可以枚举数列中的某个中间数Ai,如果从中间数Ai ...
- vector,list,deque容器的迭代器简单介绍
我们知道标准库中的容器有vector,list和deque.另外还有slist,只不过它不是标准容器.而谈到容器,我们不得不知道进行容器一切操作的利器---迭代器.而在了解迭代器之前,我们得先知道每个 ...
- STL之deque双向队列
deque双向队列是一种双向开口的连续线性空间,可以高效的在头尾两端插入和删除元素,提供随机访问,deque在接口上和vector非常相似,下面列出deque的常用成员函数: Table 6.9. C ...
- deque双向队列(转)
deque双向队列是一种双向开口的连续线性空间,可以高效的在头尾两端插入和删除元素,deque在接口上和vector非常相似,下面列出deque的常用成员函数: deque的实现比较复杂,内部会维 ...
- STL deque详解
英文原文:http://www.codeproject.com/Articles/5425/An-In-Depth-Study-of-the-STL-Deque-Container 绪言 这篇文章深入 ...
- STL顺序容器【vector】【deque】【list】
我们都知道,stl在集装箱船分为两类,订购集装箱和相关的容器. 顺序容器有三种即动态数组vector,双端队列deque,以及链表list (对csdn的文字排版严重吐槽.写好的版发表了就变了) 一: ...
随机推荐
- Vue的路由
Vue可以实现一种类是ajax不刷新但是切换界面 然后 只是在你的url中的当前地址后面追加信息 首先你要先当如这个路由的模块: <script src="https://unpkg. ...
- SDWebImage动画加载图片
SDWebImage动画加载图片 效果 源码 https://github.com/YouXianMing/Animations // // PictureCell.m // SDWebImageLo ...
- Python(二)列表的增删改查
一,列表的增删改查 列表中增加元素: 1,从列表的末尾增加一个元素:append("") 2,从列表中插入一个元素:insert(下标位置,插入的元素) 合并列表: 1,name. ...
- JAVA入门之程序设计环境搭建
这篇文章写给刚接触或者想学JAVA的新朋友.学习JAVA,需要找一本好的入门书籍,推荐<Java从入门到精通>,然后就是JAVA程序设计开发环境的搭建. 首先,我们需要安装JAVA开发工具 ...
- 详解权限管理(RBAC)的实现方法
在说权限管理前,应该先知道权限管理要有哪些功能: ().用户只能访问,指定的控制器,指定的方法 ().用户可以存在于多个用户组里 ().用户组可以选择,指定的控制器,指定的方法 ().可以添加控制器和 ...
- XtraEditors三、LookUpEdit、GridLookUpEdit、SearchLookUpEdit
https://documentation.devexpress.com/WindowsForms/DevExpress.XtraEditors.LookUpEditBase.class 一.Look ...
- CSS 鼠标样式
设置鼠标指针放在一个元素边界范围内时所用的光标形状,需要对元素的css属性cursor进行设置. cursor属性可能的值: default 默认光标(通常是一个箭头) auto 默认.浏览器设置的( ...
- Windows10 1709正式版WSL安装(以Ubuntu为例)
因为最近要使用Linux搭服务器,但是用远程的话延迟很烦,用双系统切换很麻烦,用虚拟机又会有点卡,刚好Windows10最近更新了正式版的WSL(windows下的Linux子系统),所以就想尝试一下 ...
- Python的多线程理解,转自虫师https://www.cnblogs.com/fnng/p/3670789.html
多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用简单的例子,让你对多线程有个初步的认识. 单线程 在好些年前的 ...
- [WHY]Hello, Worktile~
本来是水水的去听一听云计算大会,感受一下氛围的, 万万没想到,竟然意外的參观了Worktile,这也成了北京之旅最值得纪念的记忆. 先是路上看到QQ有个好友请求,备注是Worktile市场的小泽. 从 ...