栈
简介
栈是一种后进先出的数据结构,其插入、删除均在栈顶进行。
栈一般操作有入栈和出栈,并且有一个指针用于指示栈顶位置。
python实现
class Stack:
# 初始化一个空栈
def __init__(self):
self.data = []
# 返回栈的长度
def __len__(self):
return len(self.data)
# 判断栈是否为空
def isempty(self):
return len(self.data) == 0
# 向栈顶压入一个元素
def push(self,d):
self.data.append(d)
# 获取栈顶元素
def gettop(self):
if self.isempty():
return "Stack is empty."
return self.data[-1]
# 执行一次出栈操作,返回弹出的元素值
def pop(self):
if self.isempty():
return "Stack is empty."
return self.data.pop()
示例:
stack = Stack()
stack.push(123)
stack.push(456)
print(stack.data) # [123, 456]
print(stack.gettop()) # 456
stack.pop()
print(f"一次出栈之后:{stack.data}") # 一次出栈之后:[123]