使用python 实现栈
栈:先进先出特性,指的就是只有一个进口和出口,先进后出原则
实现:
- 使用列表实现一个栈
- 添加元素
- 返回栈顶元素
- 判断栈是否为空
- 返回栈的大小
代码实现
# Functions 函数声明
class Stack():
def __init__(self):
self.stack = []
pass
def add(self, item):
"""往栈顶添加一个数据"""
self.stack.append(item)
def get(self):
"""返回栈顶数据"""
return self.stack.pop()
def is_empty(self):
"""判断栈是否为空"""
return self.stack == []
def length(self):
"""返回栈的长度"""
return len(self.stack)
测试验证
# 程序的入口
if __name__ == "__main__":
s = Stack()
s.add(1)
s.add(2)
s.add(3)
print(s.get()) # 3
print(s.get()) # 2
print(s.get()) # 1
print(s.is_empty()) # True, 在这里我先取出了三个元素,即栈中已经没有数据
print(s.length()) # 0
pass