跳至主要內容

数据结构--队列

黑静美原创...大约 1 分钟编程python数据结构

队列

遵循先进先出FIFO(first in first out)的原则。在这种结构中,数据被依次添加到队列末端,并从队列的前端移除。类似于结账排队。

操作

队列主要支持以下几种操作

  • Enqueue:将一个元素添加到队列的尾部
  • Dequeue:从队列头部移除一个元素
  • Front:获取头部元素(不移除)
  • IsEmpty:检查队列是否为空
  • Size:返回队列中元素的数量

实现

队列可以通过多种方式实现:

使用数组或列表
使用链表

可以在O(1)的时间复杂度内进行插入和删除操作

__
  • 使用库queue.Queue: 这是Python标准库提供的一个线程安全的队列实现,适用于多线程环境
  • 使用双端队列(duque): Python 的 collections.deque提供了一个优化的双端队列实现,适合用作队列

代码模板

class CircularQueue:
    def __init__(self, capacity=8):
        # 初始化队列

    def enqueue(self, value):
        # 元素入队操作

    def dequeue(self):
        # 元素出队操作

    def peek_front(self):
        # 获取队列前端元素

    def peek_rear(self):
        # 获取队列后端元素

    def size(self):
        # 返回队列大小

    def is_empty(self):
        # 检查队列是否为空

    def is_full(self):
        # 检查队列是否已满

    def resize(self):
        # 扩大队列容量

# 示例使用
if __name__ == "__main__":
    queue = CircularQueue()
    # 进行入队、出队等操作,并打印结果

option + command+L

上次编辑于:
贡献者: Heijingmei
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.1.3