6.队列Queue

作者: Stone_説 | 来源:发表于2021-02-08 12:42 被阅读0次

目录:
1.队列的定义
2.队列的图解
3.队列定义操作
4.队列的实现

1.队列的定义

1.队列是一种有次序的数据集合,其特征是:
    新数据项的添加总发生在一端(通常称为"尾rear"端)
    而现存数据项的移除总发生在另一端(通常称为“首front”端)
2.这种次序安排的原则称为(FIFO:First-in-first-out)先进先出
3.队列仅有一个入口和出口,不允许数据项直接插入队中,也不允许从中间移除数据项

2.队列的图解

队列.jpg

3.队列定义操作

Queue(): 创建一个空队列对象,返回值为一个Queue对象;
enqueue(item): 将数据项item添加到队尾,无返回值;
dequeue(): 从队首移除数据项返回值为队首数据项,队列被修改;
isEmpty(): 测试是否空队列,返回值为布尔值;
size(): 返回队列中数据项的个数。

4.队列的实现

class Queue:
    def __init__(self):
        self.items = []

    def isEmpty(self):
        return self.items == []

    def enqueue(self,item):
        self.items.insert(0,item)

    def dequeue(self):
        return self.items.pop()

    def size(self):
        return len(self.items)
测试:
s = Queue()
print(1,s.isEmpty())
s.enqueue(100)
print(2,s.size())
s.enqueue(200)
s.enqueue(300)
print(3,s.size())
print(4,s.isEmpty())
print(s.dequeue())

# 运行结果
1 True
2 1
3 3
4 False
100
6 False

相关文章

  • 6.队列Queue

    目录:1.队列的定义2.队列的图解3.队列定义操作4.队列的实现 1.队列的定义 2.队列的图解 3.队列定义操作...

  • 循环队列的实现方法1

    设:队列长度是QUEUE_LENGTH队列数组是queue[QUEUE_LENGTH]队列头索引是head队列尾索...

  • Java—Queue队列详解

    Queue Queue队列介绍   Queue是用于模拟队列的,啥叫队列?队列就是排队的意思,比如排队结账,先进入...

  • Java—Queue队列详解(Deque/PriorityQue

    Queue Queue队列介绍   Queue是用于模拟队列的,啥叫队列?队列就是排队的意思,比如排队结账,先进入...

  • Queue模块

    一、class Queue.Queue 类 Queue类表示使用FIFO队列 Queue.qsize()返回队列的...

  • 多线程GCD

    1:GCD 创建队列: 串行队列: dispatch_queue_t queue=dispatch_queue_c...

  • 第三周_总结

    队列创建一个队列:queue_obj = queue.Queue(maxsize=30)maxsize :表示允许...

  • GCD 多线程的使用

    1.串行队列 1.1串行队列创建 dispatch_queue_t queue = dispatch_queue_...

  • GCD

    dispatch_queue_t:线程、队列dispatch_queue_create(派发队列)派发队列分为两种...

  • GCD队列queue.h__queue

    队列queue.h方法总览 创建队列(queue)相关方法: 举例说明:

网友评论

    本文标题:6.队列Queue

    本文链接:https://www.haomeiwen.com/subject/rvbxxltx.html