Python 如何用列表实现栈和队列?

Posted lvmenghui0

tags:

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

1.栈结构,其实就是一个后进先出的一个线性表,只能在栈顶压入或弹出元素。用列表表示栈,则向栈中压入元素,可以用列表的append()方法来实现,弹出栈顶元素可以用列表的pop()方法实现。

 1 >>> x=[]            #创建一个空列表,此处表示栈
 2 >>> x
 3 []
 4 >>> x.append(a)   #压入元素‘a‘
 5 >>> x
 6 [a]
 7 >>> x.append(b)   #压入元素‘b‘
 8 >>> x
 9 [a, b]
10 >>> x.pop()         #弹出栈顶元素‘b‘
11 b
12 >>> x
13 [a]
14 >>> x.pop()         #弹出栈顶元素‘a‘
15 a
16 >>> x
17 []
18 >>> x.pop()         #试图对一个空栈做弹出操作,会报异常
19 Traceback (most recent call last):
20   File "<stdin>", line 1, in <module>
21 IndexError: pop from empty list

 

2.队列,其实就是一个先进先出的线性表,只能在队首执行删除操作,在队尾执行插入操作。用列表表示队列,可以用append()方法实现在队尾插入元素,用pop(0)方法实现在队首删除元素。

>>> x=[]
>>> x.append(a)
>>> x
[a]
>>> x.append(b)
>>> x
[a, b]
>>> x.pop(0)
a
>>> x.pop(0)
b
>>> x.pop(0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: pop from empty list

 

以上是关于Python 如何用列表实现栈和队列?的主要内容,如果未能解决你的问题,请参考以下文章

如何用栈实现队列

python的栈和队列的实现代码

python的栈和队列的实现代码

Python将列表作为栈和队列

如何用函数实现入栈和出栈

[Python] 数据结构--实现顺序表链表栈和队列