Python基于列表模拟堆栈和队列功能示例

作者:追阳 时间:2021-08-17 01:36:14 

本文实例讲述了Python基于列表模拟堆栈和队列功能。分享给大家供大家参考,具体如下:

之前的文章https://www.jb51.net/article/59897.htm介绍了堆栈与队列的Python实现方法,这里使用列表来模拟一下堆栈与队列的简单操作。

一、队列特点:先进先出、后进后出

用列表insert、pop模拟进队出队:


>>> l = []
>>> l.insert(0,'p1')
>>> l.insert(0,'p2')
>>> l.insert(0,'p3')
>>> l
['p3', 'p2', 'p1']
>>> l.pop()
'p1'
>>> l.pop()
'p2'
>>> l.pop()
'p3'

用列表append、pop模拟进队出队:


>>> l = []
>>> l.append('p1')
>>> l.append('p2')
>>> l.append('p3')
>>> l
['p1', 'p2', 'p3']
>>> l.pop(0)
'p1'
>>> l.pop(0)
'p2'
>>> l.pop(0)
'p3'

二、堆栈特点:先进后出、后进先出

用列表insert、pop方法模拟进栈出栈:


>>> l = []
>>> l.insert(0,'a1')
>>> l.insert(0,'a2')
>>> l.insert(0,'a3')
>>> l
['a3', 'a2', 'a1']
>>> l.pop(0)
'a3'
>>> l.pop(0)
'a2'
>>> l.pop(0)
'a1'

用列表append、pop方法模式进栈出栈:


>>> l = []
>>> l.append('a1')
>>> l.append('a2')
>>> l.append('a3')
>>> l
['a1', 'a2', 'a3']
>>> l.pop()
'a3'
>>> l.pop()
'a2'
>>> l.pop()
'a1'

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

来源:https://www.cnblogs.com/chengtai/p/6086897.html

标签:Python,列表,堆栈,队列
0
投稿

猜你喜欢

  • OpenCV制作Mask图像掩码的案例

    2023-09-20 16:34:04
  • 原生JS实现匀速图片轮播动画

    2024-06-07 15:28:15
  • 用python实现批量重命名文件的代码

    2023-01-02 09:09:20
  • JS合并数组的几种方法及优劣比较

    2024-06-05 10:02:00
  • 新年快乐! python实现绚烂的烟花绽放效果

    2022-01-15 13:18:00
  • Python实现根据Excel生成Model和数据导入脚本

    2022-01-10 09:58:12
  • SQL参数化查询的另一个理由 命中执行计划

    2012-08-21 10:31:16
  • 使用python实现kmean算法

    2022-09-17 13:07:22
  • python实现中文输出的两种方法

    2022-08-13 11:59:42
  • 从零开始做一个pagination分页组件

    2024-04-29 13:25:13
  • django数据库迁移migration实现

    2024-01-12 19:29:43
  • opencv 实现特定颜色线条提取与定位操作

    2023-09-07 01:24:26
  • python批量更改目录名/文件名的方法

    2022-04-01 11:25:37
  • django+echart绘制曲线图的方法示例

    2023-04-22 20:56:52
  • 浅谈JavaScript 中的延迟加载属性模式

    2024-04-17 10:29:56
  • Java开发之Spring连接数据库方法实例分析

    2024-01-26 02:00:54
  • 通过cmd进入python的步骤

    2022-05-27 05:23:31
  • SQL Server 磁盘请求超时的833错误原因及解决方法

    2024-01-14 00:14:43
  • SQL Server基础之行数据转换为列数据

    2024-01-19 22:16:00
  • Golang使用Consul详解

    2024-04-26 17:35:56
  • asp之家 网络编程 m.aspxhome.com