Python中的堆栈数据结构和实现

105 阅读2分钟

在计算机科学中,数据结构是一种存储和组织数据的方式,它有助于有效地使用数据。在这篇文章中,让我们学习什么是堆栈 数据结构以及如何使用Python实现它。

堆栈是一种以 后进先出(LIFO) 方式存储项目的数据结构,这意味着在堆栈内插入的最后一个元素首先被删除。在堆栈中,只允许在一端插入和删除元素。另一端是封闭的。

向堆栈中插入项目的过程称为 ,从堆栈中删除项目的过程称为。为了理解堆栈数据结构的工作,请看下面的图。

假设我们有一个空栈。我们正在将项目一个一个地推入堆栈。

stack push operation

正如你所看到的,我们首先插入了黄色项目,接着是蓝色项目,然后是绿色项目。我们可以使用一个叫做top 的指针来跟踪堆栈中最顶端的元素。

现在,让我们看看我们如何从堆栈中弹出这些项目。由于它是一个后进先出(LIFO)的数据结构,最后被推送的项目将被首先弹出。如果你想弹出底部的项目,你必须先移除顶部的所有项目。

stack pop operation

使用Python实现堆栈

让我们试着用Python编程语言来实现这个数据结构。在Python中实现堆栈数据结构有多种方法。我们将以最简单的方式来实现它,即使用一个列表。

列表是Python中内置的数据结构,它可以作为一个堆栈使用。我们可以使用**append()方法将元素推到堆栈的顶部。我们也有pop()**方法,它可以按照后进先出的顺序删除项目。

下面给出的是实现堆栈数据结构的Python代码。

stack = []

stack.append('Yellow')
stack.append('Blue')
stack.append('Green')

print('Stack after elements are pushed:')
print(stack)

print('\nPopping items from the stack:')
print(stack.pop())
print(stack.pop())
print(stack.pop())

print('\nStack after elements are popped:')
print(stack)

输出

stack implementation in Python - output