栈(stack)又名堆栈,它是一种运算受限的线性表。栈只能在一端进行插入和删除操作,它按照先进后出(FILO)的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶。栈也可以看成是 FILO 的队列。
class Stack(object):
def __init__(self):
self.stack = []
def push(self, data):
"""
进栈函数
"""
self.stack.append(data)
def pop(self):
"""
出栈函数,
"""
return self.stack.pop()
def gettop(self):
"""
取栈顶
"""
return self.stack[-1]
pop()方法中可指定出栈的元素位置,如pop(0)弹出栈底元素,pop(-1)弹出栈顶元素。