本文实例讲述了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 Falseif __name__ == '__main__': print "VEVB武林网测试结果:" 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程序设计有所帮助。
新闻热点
疑难解答