队列和堆栈

Posted z-x-y

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了队列和堆栈相关的知识,希望对你有一定的参考价值。

 

把列表当堆栈使用,堆栈作为一个特定的数据结构,它的特点是后进先出,用append()方法可以把一个元素添加到堆栈顶,用不指定索引的pop()方法可以把一个元素从堆栈顶释放出来

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

#[3, 4, 5, 6, 7]
#7
#[3, 4, 5, 6]
#6
#5
#[3, 4]

 

把列表当队列使用,队列是先进先出

方法一

from collections import deque
queue=deque([eric,john,michael])
queue.append(terry)
queue.append(graham)
print(queue.popleft())
print(queue.popleft())
print(queue)

#eric
#john
#deque([‘michael‘, ‘terry‘, ‘graham‘])

方法二

queue=[3,4,5]
queue.append(6)
queue.append(7)
print(queue)
print(queue.pop(0))
print(queue)
print(queue.pop(0))
print(queue.pop(0))
print(queue)


#[3, 4, 5, 6, 7]
#3
#[4, 5, 6, 7]
#4
#5
#[6, 7]

 

以上是关于队列和堆栈的主要内容,如果未能解决你的问题,请参考以下文章

替换或删除后台堆栈上现有片段的代码不起作用

代码适用于与单个 html 文件不同的堆栈片段

PTA-7-22 堆栈模拟队列

在后台堆栈中多次防止相同的片段

Android TalkBack 和片段堆栈

从堆栈中弹出特定片段并删除其他片段