队列 先进先出,先进后出,优先级队列
Posted 16795079a
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了队列 先进先出,先进后出,优先级队列相关的知识,希望对你有一定的参考价值。
import queue
#先进先出
q = queue.Queue(3)#设置队列容量
q.put(1)
q.put(a)
print(‘查看当前队列的容量‘,q.qsize)
q.put(b)
print(‘查看当前容器是否满了‘,q.full())#满了返回TRUE 没满返回flase
print(q.get_nowait())#从容器中拿一个值.拿到了打印,如果没拿到容器是空的会报错,nowait 不等待的意思
q.put_nowait(1)#向容器中存一个值,如果容器满了无法存入会报错
二.先进后出队列,后进先出 类似于栈
q = queue.LifoQueue(3)#指定容量为3
q.put(1)
q.put(2)
q.put(3)
print(q.get())
print(q.get())
print(q.get())
打印结果是 3 2 1 先进后出
三.优先级队列:可以指定元素的优先级 -3 >-2 > 1 负数优先级高于正数,
假如两个元素优先级相同,如果元素是数字大小, 数字小的优先
如果是字符串则比较ASCII码,
,注意:必须以元组的形式去添加
q = queue.PriorityQueue(5)
q.put((1,2))
q.put((1,22))
print(q.get())
print(q.get())
打印结果 (1,2) (1,22)#会连同优先级一起打印出来
以上是关于队列 先进先出,先进后出,优先级队列的主要内容,如果未能解决你的问题,请参考以下文章