python实现队列
发布日期:2021-05-14 15:19:57 浏览次数:21 分类:精选文章

本文共 3577 字,大约阅读时间需要 11 分钟。

Python ������������������

��������� ������������

������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������enqueue������������������������ dequeue���������������������������������������FIFO���First-In-First-Out������������

������������

������������������������Python���������������������

class Queue:
def __init__(self):
self.items = []
def size(self):
return len(self.items)
def is_empty(self):
return len(self.items) == 0
def enqueue(self, item):
self.items.insert(0, item)
def dequeue(self):
if len(self.items) == 0:
raise Exception("���������������")
self.items.pop(0)
# ������������
q = Queue()
q.enqueue("M")
q.enqueue("a")
q.enqueue("j")
q.enqueue("o")
q.enqueue("r")
print("���������������������", q.items)
# ������������
print("\n������������������:")
q.dequeue()
print("���������������������", q.size())
print("���������������������", q.is_empty())
print("������������������:")
for _ in range(3):
print("������������������", q.dequeue())
print("���������������������", q.items)
print("���������������������", q.is_empty())

���������������

������������������������������������������������������������

  • ���������������������������thread-safe���������������������������������������������������
  • ������������������������������������pop(0)������������������������������������O(n)���������������������������������������������������������������������������
  • ������������������������������������������������������������������������������������������������������������
  • ��������� ������������

    ������������������

  • ������������__init__()

    ���������������������������������������������self.items������������������������������������

  • ���������������������size()

    ���������������������������������������

  • ���������������������is_empty()

    ������self.items������������������������������������������

  • ���������������������������enqueue(item)

    ������self.items.insert(0, item)������������������������������������������������������������������������

  • ���������������������dequeue()

    ������pop(0)������������������������������������������������������������������������������

  • ������������

    ������������������������������pop(0)���������������������������������������������������������������������������������������O(n)���������������������������������������������������������������������

  • ������������������������������������������������������������������������������
  • ������������������������������������������������������������������������������������
  • ��������� ���������������

    ������������

    ���������������������������������������������������������������������

  • ��������������� q = Queue() assert q.is_empty() == True q.enqueue("A") assert q.size() == 1 assert q.is_empty() == False q.dequeue() assert q.is_empty() == True

  • ������������������������ q.enqueue("X") q.dequeue() q.enqueue("Y") q.dequeue() assert q.size() == 0

  • ������������

    ���������������������������������������������������������������������������������������enqueuing���dequeueing������������������������������������������������������

    ������

    ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

    上一篇:python实现单链表
    下一篇:python实现栈

    发表评论

    最新留言

    关注你微信了!
    [***.104.42.241]2025年04月30日 04时50分43秒