关于队列
基本的队列是一种先进先出的数据结构。
一般的队列基本操作如下:
- create:创建空队列
- add:将新数据加入队列的末尾。返回新队列。
- delete:删除队列头部的数据,返回新队列。
- fromt:返回队列头部的值
- empty:若队列为空,则返回一个空队列。
使用列表简单实现一个队列
class lqueue(self): def __init__(self): self.list = [] # 入队 def inq(self.item): self.list.append(item) # 出队 def outq(self): self.list.pop(0) # 判断是否为空 def is_empty(self): return self.list == [] # 队列长度 def qlength(self): return len(self.list)
标准队列
python的queue
模块提供了一个先进先出的队列类型Queue。Queue主要有以下几种方法:
put()
:在队列尾部添加元素get()
:从队列头部取出元素,返回队列头部元素empty()
:判断队列是否为空full()
:判断队列是否达到最大长度限制qsize()
:队列当前长度
from queue import Queue # maxsize=0表示不限制队列长度 q = Queue(maxsize=0) q.put(1) q.put(2) print(q.queue) # deque([1, 2]) q.get() # 1 print(q.queue) # deque([2]) print(q.qsize()) # 1 print(q.empty()) # false print(q.full()) # false