"""
顺序栈类: 利用列表,将其二次封装,提供接口方法
定义: 栈是限制在一端进行插入和删除操作的线性表(俗称堆栈),允许操作的一端叫栈顶,另一端叫栈底,
当栈中没有元素是叫空栈
特点:只能在一端操作数据
模型先进后出,或者后进先出
"""
# 自定义异常类
class StackError(Exception):
pass
class Order_Stack:
def __init__(self):
# 空列表表示栈的存储空间
# 列表的最后一个元素为栈顶
self._elems = []
def is_empty(self):
return self._elems == []
# 入栈
def push(self, val):
self._elems.append(val)
# 出栈
def pop(self):
if self.is_empty():
raise StackError("Stack is empty")
# 弹出并返回
return self._elems.pop()
# 查看栈顶元素
def top(self):
if self.is_empty():
raise StackError("Stack is empty")
return self._elems[-1]
python自定义栈练习(顺序栈)
最新推荐文章于 2022-04-02 20:12:34 发布