Python实现基本数据结构中栈的操作示例
本文通过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程序设计有所帮助。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













