本文实例讲述了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程序设计有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。