在英语词典中,单词stack(堆栈)的意思是将对象排列在另一个对象上。 这与在此数据结构中分配内存的方式相同。 它以与在厨房中将一堆板叠放在另一个板上的类似方式存储数据元素。 因此,堆栈数据结构允许在一端的操作可称为堆栈顶部。 我们只能在堆栈中添加或删除元素。

在堆栈中,按顺序最后插入的元素将首先出现,因为我们只能从堆栈顶部移除。 这种功能称为后进先出(LIFO)功能。 添加和删除元素的操作称为PUSH和POP。 在以下程序中,我们将实现添加和删除功能。 我们声明一个空列表,并使用append()和pop()方法添加和删除数据元素。

推入堆栈

运行上面代码,程序将打印两行星期一。

从堆栈中移除

众所周知,我们只能从堆栈中删除过多的数据元素,因此我们实现了执行此操作的python程序。 以下程序中的remove函数返回最上面的元素。 我们首先通过计算堆栈的大小来检查顶部元素,然后使用内置的pop()方法找出最顶部的元素。

运行程序,将打印星期二,星期四;因为该堆栈使用了后进先出的规则。

除了后进先出之外,还有先进先出的堆栈,具体实现方法后续会有详细教程,欢迎关注!

perfcode.com 保留所有权;如需转载,请注明出处。