Python实现基本数据结构中栈的操作示例


Posted in Python onDecember 04, 2017

本文实例讲述了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为tornado添加recaptcha验证码功能
Feb 26 Python
python实现同时给多个变量赋值的方法
Apr 30 Python
python pandas 组内排序、单组排序、标号的实例
Apr 12 Python
解决Python获取字典dict中不存在的值时出错问题
Oct 17 Python
Python中xml和json格式相互转换操作示例
Dec 05 Python
浅谈python的深浅拷贝以及fromkeys的用法
Mar 08 Python
python代理工具mitmproxy使用指南
Jul 04 Python
你可能不知道的Python 技巧小结
Jan 29 Python
Python json模块与jsonpath模块区别详解
Mar 05 Python
Python装饰器用法与知识点小结
Mar 09 Python
PyCharm+PyQt5+QtDesigner配置详解
Aug 12 Python
python BeautifulSoup库的安装与使用
Dec 17 Python
Python实现多进程共享数据的方法分析
Dec 04 #Python
Python数据结构之栈、队列的实现代码分享
Dec 04 #Python
关于Python数据结构中字典的心得
Dec 04 #Python
python Flask实现restful api service
Dec 04 #Python
浅谈Python中带_的变量或函数命名
Dec 04 #Python
Python中对象的引用与复制代码示例
Dec 04 #Python
Python3 Random模块代码详解
Dec 04 #Python
You might like
收集的php编写大型网站问题集
2007/03/06 PHP
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
2013/04/13 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
2015/03/12 PHP
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
2016/12/14 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
2010/03/07 Javascript
推荐17个优美新鲜的jQuery的工具提示插件
2012/09/14 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
2013/04/25 Javascript
javascript常用函数归纳整理
2014/10/31 Javascript
jQuery+PHP实现微信转盘抽奖功能的方法
2016/05/25 Javascript
JS中使用DOM来控制HTML元素
2016/07/31 Javascript
ExtJS 4.2 Grid组件单元格合并的方法
2016/10/12 Javascript
js+div+css下拉导航菜单完整代码分享
2016/12/28 Javascript
微信小程序 设置启动页面的两种方法
2017/03/09 Javascript
基于JavaScript实现的快速排序算法分析
2017/04/14 Javascript
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
Vue2.0设置全局样式(less/sass和css)
2017/11/18 Javascript
Python中is与==判断的区别
2017/03/28 Python
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
Python引用计数操作示例
2018/08/23 Python
对python中的os.getpid()和os.fork()函数详解
2019/08/08 Python
Python如何用filter函数筛选数据
2020/03/05 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
2020/04/07 Python
html5 postMessage前端跨域并前端监听的方法示例
2018/11/01 HTML / CSS
DAWGS鞋官方网站:鞋,凉鞋,靴子
2016/10/04 全球购物
财政局长自荐信范文
2013/12/22 职场文书
火锅店创业计划书范文
2014/02/02 职场文书
《回乡偶书》教学反思
2014/04/12 职场文书
乒乓球兴趣小组活动总结
2014/07/08 职场文书
党员批评与自我批评发言
2014/10/02 职场文书
大学感恩节活动策划方案
2014/10/11 职场文书
房屋租赁合同协议书范本
2014/10/19 职场文书
家长高考寄语
2015/02/27 职场文书
2015年社区卫生工作总结
2015/04/21 职场文书
单位工作证明范本
2015/06/15 职场文书
军训阅兵新闻稿
2015/07/17 职场文书