python 双端队列 deque

转载 2015年11月19日 11:40:58

什么是双端队列

deque,全名double-ended queue)是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。

优点

  append和pop操作是O(1),高效率。
适用操作
  1·类似与unix下的tail函数。
  2·从右边加入,从左边弹出的操作

下面简单的介绍一下python中双端队列的操作函数;

from collections import deque   #首先从collections 模块中导入deque类

下来我们定义一个双端队列

1. A=deque([])  #创建一个空的双队列
2. A.append(n)  #从右边像队列中增加元素 ,n表示增加的元素
3. A.appendleft(n) #从左边像队列中增加元素,n表示增加的元素
4. A.clear()       #清空队列
5. A.count(n)      #在队列中统计元素的个数,n表示统计的元素
6. A.extend(n)      #从右边扩展队列,n表示扩展的队列
7. A.extendleft(n)  #从左边扩展队列,n表示扩展的队列
8. A.pop()         #从队列的右边删除元素,并且返回删除值
9. A.popleft()     #从队列的左边删除元素,并且返回删除值
10. A.remove(n)      #从队列中删除指定的值
11. A.reverse()     #翻转队列
12. A.rotate(n)      #旋转队列,默认时值为1,由右边开始旋转,负值代表左边旋转,n代表从队列的第一个元素开始,n从1开始计数


转载自:http://blog.sina.com.cn/s/blog_b5fe6b270101esju.html

python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列

标准库:一些最爱 集合、堆和双端队列 集合 集合Set类位于sets模块中。 >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> set(ra...

双端队列(Deque)的python实现及应用

双端队列的说明 双端队列是一个有序的线性结构 双端队列在队列两端都可以进行入队和出队操作 双端队列的函数列表代码实现# author: HuYong # coding=utf-8class Deque...

STL--双端队列(deque)和链表(list)

双端队列(deque容器类): #include与vector 类似,支持随机访问和快速插入删除,它在容器中某一位置上的操作所花费的是线性时间。 与vector不同的是:deque 还支持...

双端队列(deque)的应用

问题描述:(滑动最小值)  给定的一个长度为n的数列a0,a1,a2..an-1,和一个整数k,求数列bi=min(ai,ai+1..ai+k-1){i=0,1,..n-k}  {1  sample ...

Java 集合深入理解(10):Deque 双端队列

点击查看 Java 集合框架深入理解 系列, - ( ゜- ゜)つロ 乾杯~什么是 DequeDeque 是 Double ended queue (双端队列) 的缩写,读音和 deck 一样,蛋壳。...

Java 数据结构之Deque(双端队列)

Deque接口是“double ended queue”的缩写(通常读作“deck”),即双端队列,支持在队列的两端插入和删除元素。大多数的实现对元素的数量没有限制,但这个接口既支持有容量限制的deq...

ACM学习历程14——deque双端队列容器

Deque双端队列容器与Vector向量容器相似,实现了随机访问、尾部插入和头部插入。不同的是deque采用分块的线性存储结构存储数据,此外,deque内部的数据数据机制和执行性能也与vector不同...

STL顺利容器之双端队列(deque)

双端队列是由动态数组实现。 头文件: #include 构造方法: deque deq                                  ...

双端队列Deque

Queue除了前面介绍的实现外,还有一种双向的Queue实现Deque。这种队列允许在队列头和尾部进行入队出队操作,因此在功能上比Queue显然要更复杂。下图描述的是Deque的完整体系图。需要说明的...
  • mawming
  • mawming
  • 2016年08月25日 15:40
  • 292

【ZOJ3929 The 16th Zhejiang University Programming ContestC】【DP】Deque and Balls n个数放入双端队列2^n种方案有多少个位置

Deque and Balls Time Limit: 2 Seconds      Memory Limit: 65536 KB There are n balls, where t...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python 双端队列 deque
举报原因:
原因补充:

(最多只允许输入30个字)