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

作者:爱橙子的OK绷 时间:2021-09-04 10:29:23 

本文实例讲述了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程序设计有所帮助。

来源:http://blog.csdn.net/will130/article/details/45269943

标签:Python,数据结构,栈
0
投稿

猜你喜欢

  • pytest官方文档解读fixtures的autouse

    2023-06-22 01:18:58
  • ASP.NET中URL Routing和IIS上URL Rewriting的区别

    2024-06-05 09:25:27
  • 基于PyTorch实现EdgeCNN的实战教程

    2023-12-30 22:28:20
  • 利用python进行数据加载

    2022-05-11 19:55:00
  • PHP 接入微信扫码支付总结(总结篇)

    2024-05-13 09:53:31
  • mysqldump备份数据库时排除某些库的实例

    2024-01-14 16:44:45
  • python使用os模块的os.walk遍历文件夹示例

    2021-05-21 12:30:07
  • 在antd Form表单中select设置初始值操作

    2024-05-02 17:03:12
  • python图形界面教程Tkinter详解

    2021-01-08 04:27:47
  • Python中用于去除空格的三个函数的使用小结

    2022-02-07 23:43:45
  • 小米正式开源 SQL 智能优化与改写工具 SOAR

    2024-01-20 09:34:56
  • python实现图书馆研习室自动预约功能

    2022-03-22 02:04:44
  • python 限制函数执行时间,自己实现timeout的实例

    2023-08-03 00:49:12
  • 通过事务日志解决SQL Server常见四大故障(二)

    2009-03-25 13:51:00
  • python QT界面关闭线程池的线程跟随退出完美解决方案

    2023-01-01 11:56:21
  • MySQL向表中添加列方法实例

    2024-01-20 19:08:37
  • 深入理解Python虚拟机中元组(tuple)的实现原理及源码

    2022-07-12 14:14:21
  • 刚学完怎么用Python实现定时任务,转头就跑去撩妹!

    2022-07-09 06:50:02
  • Python3使用xlrd、xlwt处理Excel方法数据

    2023-04-03 03:25:29
  • Vue中正确使用jQuery的方法

    2023-07-02 17:07:45
  • asp之家 网络编程 m.aspxhome.com