题意:给出一个序列,按照顺序一个一个放入双端队列(可以放在头部也可以放在尾部),一个队列的美丽指数就是数列中a[i]>a[i+1]的个数,求美丽指数的期望*2^n的值。 解题思路:方便起见,我们将a[i]>a[i+1]的情况称为D情况。 由题意可以知道最后得到的序列一共有2^(n-1)个,设ans= ...
分类:
其他好文 时间:
2016-04-12 00:29:01
阅读次数:
223
deque与vector很相似,不仅能够在尾部插入和删除元素,还能够在头部插入和删除。只是当考虑到容器元素的内存分配策略和操作性能时。deque相对vector较为有优势。 头文件 #include<deque> 创建deque对象 1)deque();//创建一个没有不论什么元素的deque对象。 ...
分类:
其他好文 时间:
2016-04-01 21:47:09
阅读次数:
191
简单列了一点 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自然溢出 双hash 1.3 高级数据结构 1. 树状数组 2. 线段树,线段树合并
分类:
其他好文 时间:
2016-03-14 21:46:22
阅读次数:
157
以下内容基于jdk1.7.0_79源码; List接口的链表实现,并提供了一些队列,栈,双端队列操作的方法; 与ArrayList对比,LinkedList插入和删除操作更加高效,随机访问速度慢; 可以作为栈、队列、双端队列数据结构使用; 非同步,线程不安全; 与ArrayList、Vector一样
分类:
编程语言 时间:
2016-03-12 21:24:44
阅读次数:
336
1.顺序容器 C++标准库中有三种顺序容器:vector list deque vector:支持快速随机访问,在尾部之外的位置插入或删除元素可能较慢 list:支持快速插入/删除,只支持双向顺序访问 deque:双端队列,支持快速随机访问,头尾插入和删除速度很快 还有array(不能添加和删除),
分类:
编程语言 时间:
2016-03-10 23:37:36
阅读次数:
239
一、综述 <vector>:可变大小数组。支持快速随机访问。在尾部之外的位置插入或删除元素可能很慢。 <deque>:双端队列。支持快速随机访问。在头尾位置插入/删除速度很快。 <list>:双向链表。只支持双向顺序访问。在list中任何位置进行插入/删除操作速度都很快。 <forward_list
分类:
编程语言 时间:
2016-03-10 21:53:07
阅读次数:
275
一、缺省模板参数
1、stack内存能否借助标准模板容器管理呢?答案是肯定的,只需要多传一个模板参数即可,而且模板参数还可以是缺省的,如下:
template > //此处末尾必须有空格,否则编译出错
class Stack
{
…
private:
CONT c_;
};
如果没有传第二个参数,默认为deque 双端队列,当然我们也可以传递std::vector...
分类:
编程语言 时间:
2016-02-15 12:19:31
阅读次数:
232
collection数据容器Python拥有一些内置的数据类型,比如str,int,list,tuple,dict等,
collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型:namedtuple()。创建有名字域的元组子类的工厂函数。python2.6新增。deque:双端队列,类似于列表,两端进栈和出栈..
分类:
编程语言 时间:
2016-01-25 13:18:41
阅读次数:
1247
考虑到数据范围不小。。。采用双端队列优化:如果当前距离小于队列头,则将当前结点push到队列头。再考虑判负环。。。其实入队次数貌似比较迷?反正多加几次可能问题不大。#include#include#include#include#define inf 12345678#define maxv 200...
分类:
其他好文 时间:
2016-01-03 17:20:55
阅读次数:
157
队列:先进先出,处理类似排队的问题,先排的。先处理,后排的等前面的处理完了,再处理对于插入和移除操作的时间复杂度都为O(1)。从后面插入,从前面移除双端队列:即在队列两端都能够insert和remove:insertLeft、insertRight。removeLeft、removeRight含有栈...
分类:
编程语言 时间:
2016-01-01 09:26:41
阅读次数:
249