本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
标签:
Python,数据结构,栈
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
内蒙古资源网 Copyright www.nmgbbs.com
暂无“Python实现基本数据结构中栈的操作示例”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
