python写算法中的栈
2024-08-26 17:52:40
########### 栈的使用 ############### class StackFullError(Exception):
pass
class StackEmptyError(Exception):
pass class Stack(object):
def __init__(self,size):
self.size=size
self.lst = []
self.top = 0 def push(self,item):
if self.top == self.size:
raise StackFullError("超出异常")
# self.lst[self.top] = item # 一开始是没有索引0的,会报错
self.lst.insert(self.top,item) # 可以使用insert,根据索引进行插入值
self.top += 1 def pop(self):
if self.top == 0:
raise StackEmptyError("没有了")
self.top -= 1
item = self.lst[self.top] # 获取元素
return item s = Stack(5)
s.push("chen1")
s.push("chen2")
s.push("chen3")
s.push("chen4")
s.push("chen5") print(s.pop())
print(s.pop())
print(s.pop())
print(s.pop())
print(s.pop())
最新文章
- C#进阶系列——WebApi 异常处理解决方案
- poj 3414 Pots bfs+模拟
- 【BZOJ-4082】Surveillance 树链剖分 LCA + 贪心
- 闲说HeartBeat心跳包和TCP协议的KeepAlive机制
- 分布式ID生成器 zz
- Atom.io设置ctrl+delete
- 自定义控件设置属性并实时展现并预览在xib中
- Unity 用户手册用户指南二维纹理 (Texture 2D)
- soapui中文操作手册(五)----入门与安全测试
- lastPathComponent的功能
- [CAMCOCO][C#]我的系统架构.服务器端.(一)
- ECSHOP - 二次开发指南---购物车篇
- op编译信赖的库
- AfxBeginThread的介绍/基本用法
- HUST 1353 Dartboard
- Eclipse 多行复制并且移动失效
- gnome 3 美化
- MySQL数据库优化的八种方式
- /etc/passwd /etc/group /etc/shadow 文件的格式说明
- laravel5.5 excel扩展包的安装和使用
热门文章
- idea报错:Invalid bound statement (not found)
- Selenium切换窗口,警告框处理,调用JavaScript代码
- POJ 2391 Ombrophobic Bovines (二分答案+floyd+最大流)
- Microsoft Office Word 中的公式自动编号
- 【转】傅盛:一家公司最大瓶颈就是CEO
- centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'
- 获取验证码倒计时60s
- Java笔记(二十一) 动态代理
- django——CRM项目
- visual studio的包含目录配置问题