Python实现基本数据结构中栈的操作示例
本文实例讲述了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程序设计有所帮助。
相关推荐
zhangxiafll 2020-11-13
shenwenjie 2020-09-24
xiesheng 2020-08-02
mingyunxiaohai 2020-07-28
Cypress 2020-07-08
koushr 2020-11-12
kikaylee 2020-10-31
范范 2020-10-28
MILemon 2020-10-22
hugebawu 2020-10-12
LauraRan 2020-09-28
omyrobin 2020-09-23
guangcheng 2020-09-22
qiangde 2020-09-13
hanyujianke 2020-08-18
晨曦之星 2020-08-14
xiesheng 2020-08-06
KAIrving 2020-08-02