Python中如何实现双端队列

2023-04-11 00:00:00 python 队列 如何实现

Python 中可以使用 collections 模块中的 deque 类来实现双端队列。deque类是一个线程安全的双端队列,支持从两端添加或删除元素。

具体实现步骤如下:

1.导入collections模块中的deque类

from collections import deque

2.创建一个双端队列

d = deque()

3.在队列头尾添加元素

d.appendleft(element) #在队列头添加元素
d.append(element) #在队列尾添加元素

4.在队列头尾删除元素

d.popleft() #在队列头删除元素
d.pop() #在队列尾删除元素

完整示例代码如下:

from collections import deque

d = deque()
d.appendleft("p")
d.append("i")
d.append("d")
d.append("a")
d.appendleft("n")
d.append("c")
d.append("o")
d.append("d")
d.append("e")
print(d)

d.popleft()
d.pop()
print(d)

输出结果:

deque(['n', 'p', 'i', 'd', 'a', 'c', 'o', 'd', 'e'])
deque(['p', 'i', 'd', 'a', 'c', 'o'])

示例中,通过 appendleft() 在队列头添加元素“p”、“n”,通过 append() 在队列尾添加元素“i”、“d”、“a”、“c”、“o”、“d”、“e”。最后输出 deque(['n', 'p', 'i', 'd', 'a', 'c', 'o', 'd', 'e'])。接着,通过 popleft() 在队列头删除元素“n”,再通过 pop() 在队列尾删除元素“e”,最后输出 deque(['p', 'i', 'd', 'a', 'c', 'o'])。

相关文章