位置: 编程技术 - 正文

Python数据结构之栈、队列的实现代码分享(python数据结构教程)

编辑:rootadmin

推荐整理分享Python数据结构之栈、队列的实现代码分享(python数据结构教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python数据结构有哪些,python数据结构教程,python数据结构教程,python数据结构知乎,python数据结构之数组,python3 数据结构,python数据结构教程,python数据结构之数组,内容如对您有帮助,希望把文章链接给更多的朋友!

1. 栈

栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。

栈(Stack)是限制插入和删除操作只能在一个位置进行的表,该位置是表的末端,称为栈的顶(top)。栈的基本操作有PUSH(入栈)和POP(出栈)。栈又被称为LIFO(后入先出)表。

1.1 栈的实现

1.2 栈应用

1.2.1 检查程序中成对的符号

程序的语法错误经常是由缺少一个符号造成的。可用栈来检查符号是否成对。做一个空栈,如果字符是开放符号('({[')则将其push栈中。如果符号是个闭合符号(')]}'),则当栈空时报错,对应'()}'的错误。否则,将栈pop,如果弹出的符号不是对应的开放符号,则报错,对应'(}'的错误。文件末尾,如果栈为空,则报错,对应'({}'的错误。

1.2.2 进制转换

十进制转换二进制:把十进制转成二进制一直分解至商数为0。从最底左边数字开始读,之后读右边的数字,从下读到上。

Python数据结构之栈、队列的实现代码分享(python数据结构教程)

来自《Problem Solving with Algorithms and Data Structures》的图片:

代码:

1.2.3 后缀记法

后缀记法(postfix),使用一个栈,见到一个数时入栈,遇到一个运算符时就作用于从栈弹出的两个元素,将结果弹入栈中。

(7+8)/(3+2)可以写作7 8 + 3 2 + /

来自《Problem Solving with Algorithms and Data Structures》的图片:

2 队列

队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。

队列(queue)也是表,使用队列时插入和删除在不同的端进行。队列的基本操作是Enqueue(入队),在表的末端(rear)插入一个元素,还有出列(Dequeue),删除表开头的元素。

总结

标签: python数据结构教程

本文链接地址:https://www.jiuchutong.com/biancheng/377048.html 转载请保留说明!

上一篇:关于Python数据结构中字典的心得(python数据结构教程)

下一篇:Python实现多进程共享数据的方法分析(python多进程编程)

  • 简易计税方法的计算公式
  • 城建税计税依据扣除增值税期末留抵
  • 对公账户余额和实际不符
  • 盈余公积的作用与意义
  • 事业单位有那种
  • 预收贷方余额表示什么意思
  • 留抵税额账上比申报表多280
  • 退休职工怎么填写单位吗
  • 股东借款转实收资本需要什么原始凭证
  • 年报财务报表在哪里申报
  • 企业内部控制调查问卷
  • 自建的固定资产可以抵扣吗
  • 外购低值易耗品支付价款16万元
  • 个人所得税中的股息红利应纳税额
  • 人工费开专票最多能开几个点的
  • 汇算清缴后如何进行调帐处理
  • 银行卡刷卡消费限额
  • 国税通用机打发票有几联
  • 资产负债表损益表现金流量表
  • 运输费未取得运输专用发票怎么抵扣?
  • 发票在验旧日期之后作废吗
  • 上报汇总完成,远程清卡清不了
  • 应交税费重分类分录
  • 待处理财产损益期末结转到哪里
  • windos10不显示桌面
  • 税负率的计算方法公式
  • 公司代缴社保公司吃亏吗
  • 材料没有入库
  • 应税消费品对外出售
  • kb4586863更新
  • 在途物资退货会退款吗
  • 股票收益的计算公式
  • 收购后的固定资产如何入账
  • PHP - EasyUI DataGrid 资料取的方式介绍
  • 保险业营改增
  • 销售自己2008年1月购入并作为
  • 银行转账手续费最高多少钱
  • 文化事业建设费减免政策
  • ci框架中新建的控制器取不到session
  • 提取备用金记账凭证图片
  • yolov5画框重复、大框包小框问题解决,c++、python代码调用onnx
  • php环境搭建apache
  • 印花税是1%吗
  • 商贸公司对加工的影响
  • 投标保证金的缴纳方式有哪些
  • 收到多开发票的会计分录
  • js闭包示例
  • 耕地占用税如何计算
  • 企业注销了,存钱怎么办
  • 计提工资附什么单据
  • 一般纳税人简易征收的适用范围
  • 主营业务收入科目按其所归属的会计要素不同
  • 买赠销售账务处理
  • 工会会计有工资么
  • 担保费能否抵扣增值税
  • 什么是划分?划分应当遵守哪些规则?
  • 公司支付质保金怎么做账
  • 怎样修改windows开机密码
  • mac蓝牙连接iphone有什么用
  • linux安装mailx
  • u盘安装win7系统教程图解
  • win10怎么安装网络驱动程序
  • centos的top命令
  • potplayer win7
  • macbook快捷操作大全
  • win10应用商店更新软件更新不了
  • win1020h2正式版
  • win8怎么禁止更新
  • win7此电脑在哪里
  • win10系统百度网盘链接
  • 第一个安卓项目
  • unity点击按钮没反应
  • 网络传输协议是事实上的国际标准
  • js文件设置编码
  • python的爬虫模块
  • javascript操作csv
  • pythonandroid开发
  • jQuery插件cxSelect多级联动下拉菜单实例解析
  • 开电子发票流程步骤
  • 建安服务税率是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设