Python实现基本数据结构中栈的操作示例
作者:爱橙子的OK绷 时间:2021-09-04 10:29:23
本文实例讲述了Python实现基本数据结构中栈的操作。分享给大家供大家参考,具体如下:
#! /usr/bin/env python
#coding=utf-8
#Python实现基本数据结构---栈操作
class Stack(object):
def __init__(self,size):
self.size = size
self.stack = []
self.top = 0#初始化,top=0时则为空栈
def push(self,x):
if self.stackFull():#进栈之前检查栈是否已满
raise Exception("overflow !")
else:
self.stack.append(x)
self.top=self.top+1#push进去的第一个元素下标为1
def pop(self):
if self.stackEmpty():
raise Exception("underflow !")
else:
self.top=self.top-1
return self.stack.pop()#利用Python内建函数pop()实现弹出
def stackEmpty(self):
if self.top == 0:#判断栈空
return True
else:
return False
def stackFull(self):
if self.top == self.size:#判断栈满!!!
return True
else:
return False
if __name__ == '__main__':
print "脚本之家测试结果:"
s=Stack(10)
for i in range(3):
s.push(i)
print s.stack
print s.pop()
print s.stack
print s.pop()
print s.pop()
print s.stack
print s.stackEmpty()
print s.stackFull()
for i in range(10):
s.push(i)
print s.stackFull()
运行结果:
希望本文所述对大家Python程序设计有所帮助。
来源:http://blog.csdn.net/will130/article/details/45269943
标签:Python,数据结构,栈
0
投稿
猜你喜欢
pytest官方文档解读fixtures的autouse
2023-06-22 01:18:58
ASP.NET中URL Routing和IIS上URL Rewriting的区别
2024-06-05 09:25:27
基于PyTorch实现EdgeCNN的实战教程
2023-12-30 22:28:20
利用python进行数据加载
2022-05-11 19:55:00
PHP 接入微信扫码支付总结(总结篇)
2024-05-13 09:53:31
mysqldump备份数据库时排除某些库的实例
2024-01-14 16:44:45
python使用os模块的os.walk遍历文件夹示例
2021-05-21 12:30:07
在antd Form表单中select设置初始值操作
2024-05-02 17:03:12
python图形界面教程Tkinter详解
2021-01-08 04:27:47
Python中用于去除空格的三个函数的使用小结
2022-02-07 23:43:45
小米正式开源 SQL 智能优化与改写工具 SOAR
2024-01-20 09:34:56
python实现图书馆研习室自动预约功能
2022-03-22 02:04:44
python 限制函数执行时间,自己实现timeout的实例
2023-08-03 00:49:12
通过事务日志解决SQL Server常见四大故障(二)
2009-03-25 13:51:00
python QT界面关闭线程池的线程跟随退出完美解决方案
2023-01-01 11:56:21
MySQL向表中添加列方法实例
2024-01-20 19:08:37
深入理解Python虚拟机中元组(tuple)的实现原理及源码
2022-07-12 14:14:21
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
2022-07-09 06:50:02
Python3使用xlrd、xlwt处理Excel方法数据
2023-04-03 03:25:29
Vue中正确使用jQuery的方法
2023-07-02 17:07:45