• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > python实现堆栈与队列的方法

python实现堆栈与队列的方法

作者:shichen2014 字体:[增加 减小] 来源:互联网

shichen2014 通过本文主要向大家介绍了python实现栈,python全栈工程师,python全栈开发,python全栈,python 栈等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了python实现堆栈与队列的方法。分享给大家供大家参考。具体分析如下:

1、python实现堆栈,可先将Stack类写入文件stack.py,在其它程序文件中使用from stack import Stack,然后就可以使用堆栈了。

stack.py的程序:
    def __init__(self,size): 
        self.size=size; 
        self.stack=[]; 
        self.top=-1; 
    def push(self,ele):  #入栈之前检查栈是否已满 
        if self.isfull(): 
            raise exception("out of range"); 
        else: 
            self.stack.append(ele); 
            self.top=self.top+1; 
    def pop(self):             # 出栈之前检查栈是否为空 
        if self.isempty(): 
            raise exception("stack is empty"); 
        else: 
            self.top=self.top-1; 
            return self.stack.pop(); 
     
    def isfull(self): 
        return self.top+1==self.size; 
    def isempty(self): 
        return self.top==-1;</div>
 
再写一个程序文件,stacktest.py,使用栈,内容如下:
 
from stack import Stack 
s=Stack(20); 
for i in range(3): 
    s.push(i); 
s.pop() 
print s.isempty();</div>
2、python 实现队列:

    def __init__(self,size): 
        self.size=size; 
        self.front=-1; 
        self.rear=-1; 
        self.queue=[]; 
    def enqueue(self,ele):  #入队操作 
        if self.isfull(): 
            raise exception("queue is full"); 
        else: 
            self.queue.append(ele); 
            self.rear=self.rear+1; 
    def dequeue(self):      #出队操作 
        if self.isempty(): 
            raise exception("queue is empty"); 
        else: 
            self.front=self.front+1; 
            return self.queue[self.front]; 
    def isfull(self): 
        return self.rear-self.front+1==self.size; 
    def isempty(self): 
        return self.front==self.rear; 
     
q=Queue(10); 
for i in range(3): 
    q.enqueue(i); 
print q.dequeue(); 
print q.isempty();</div>

希望本文所述对大家的Python程序设计有所帮助。

</div>

您可能想查找下面的文章:

  • Python实现栈的方法
  • Python实现栈的方法
  • python实现堆栈与队列的方法

相关文章

  • python基于windows平台锁定键盘输入的方法
  • urllib2自定义opener详解
  • python使用PythonMagick将jpg图片转换成ico图片的方法
  • Python中模块string.py详解
  • 总结用Pdb库调试Python的方式及常用的命令
  • python基础教程之循环介绍
  • python基础教程之实现石头剪刀布游戏示例
  • python算法学习之桶排序算法实例(分块排序)
  • 使用PDB简单调试Python程序简明指南
  • 详解Python中break语句的用法

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • python使用wxpython开发简单记事本的方法
    • Python内置数据结构与操作符的练习题集锦
    • Python 功能和特点(新手必学)
    • python实现的AES双向对称加密解密与用法分析
    • 使用Python从有道词典网页获取单词翻译
    • python通过pil模块获得图片exif信息的方法
    • python getopt详解及简单实例
    • python中readline判断文件读取结束的方法
    • 解决python3 urllib中urlopen报错的问题
    • Python中Django 后台自定义表单控件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有