本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答