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 双端队列

原文地址:http://blog.sina.com.cn/s/blog_b5fe6b270101esju.html 什么是双端队列 deque,全名double-ended q...
  • u012063507
  • u012063507
  • 2017年04月22日 13:20
  • 400

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

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

高性能Python之:Queue,deque,queue对比

Python作为一门脚本语言,有着很多便捷易用的优秀特点,但他也有一个很大的缺陷,就是性能太差,这也是作为脚本语言不可避免的问题,这里我们来学习一些方法,提高Python的性能: 为了大家测...
  • xfyangle
  • xfyangle
  • 2017年03月11日 13:03
  • 3432

Python Queue模块详解

Python中,队列是线程间最常用的交换数据的形式。Queue模块是提供队列操作的模块,虽然简单易用,但是不小心的话,还是会出现一些意外。 创建一个“队列”对象 import Queue q...
  • Evan123mg
  • Evan123mg
  • 2015年11月19日 11:46
  • 1755

python中的数据结构之deque

数据结构 数据结构真的很简单,不要被这个高大上的名字所欺骗了。 双端队列 什么是双端队列? 就是元素可以从两端进行添加,或者从两端进行删除。 from collections imp...
  • lineuman
  • lineuman
  • 2017年05月24日 21:03
  • 309

python中deque模块详解

最近在pythonTip做题的时候,遇到了deque模块,以前对其不太了解,现在特此总结一下 deque模块是python标准库collections中的一项,它提供了两端都可以操作的序列,这意味着...
  • u013857407
  • u013857407
  • 2015年03月17日 10:28
  • 7433

Python deque用法介绍

Python的collections中有一个deque,这个对象类似于list列表,不过你可以操作它的“两端”。比如下面的例子: import collections d=collections.d...
  • liangguohuan
  • liangguohuan
  • 2011年12月20日 16:21
  • 13505

python2.7-deque 类

deque 类是python中的一个双端队列类,能够在队列两端以O(1)的效率插入与删除数据,位于模块collections中。 1.deque([iterable[,maxlen=]]) ...
  • tdscdma123
  • tdscdma123
  • 2016年09月19日 19:42
  • 315

python -- python collections模块中的deque

在python2.4中,模块collections只为我们提供了一种类型deque,这个类型的实例就是“双端队列(Double-Ended  Queue)” 如何理解deque? deque就是双...
  • yuehuanjue
  • yuehuanjue
  • 2014年10月10日 16:38
  • 1461

Python deque学习笔记01

from collections import deque
  • bin381
  • bin381
  • 2014年10月12日 15:31
  • 3461
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python 双端队列 deque
举报原因:
原因补充:

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