如何在python中创建堆栈和队列

时间:2018-05-09 22:54:23

标签: python data-structures

我需要为搜索算法创建一个堆栈和一个队列(深度优先/广度优先/最优先)因此我需要创建一个堆栈和一个队列。

如何在python中创建堆栈和队列?

2 个答案:

答案 0 :(得分:2)

您可以将列表用作堆栈。可以在here上找到一份好的文档。您的代码可能看起来像这样

>>> stack = [3, 4, 5]
>>> stack.append(6)
>>> stack.append(7)
>>> stack
[3, 4, 5, 6, 7]
>>> stack.pop()
7
>>> stack
[3, 4, 5, 6]
>>> stack.pop()
6
>>> stack.pop()
5
>>> stack
[3, 4]

您可能希望在代码中import queue进行队列实现

>>> import queue

>>> L = queue.Queue(maxsize=20)
>>> L.put(5)
>>> L.put(9)
>>> L.put(1)
>>> L.put(7)

>>> print(L.get())
5
>>> print(L.get())
9
>>> print(L.get())
1
>>> print(L.get())
7

答案 1 :(得分:1)

您可以使用deque对象,它同时作为两者 - 检查它支持的函数的文档,以及如何将它用作队列或堆栈。

from collections import deque
d = deque()