一、栈:

#栈的实现,先进后出

class Stack(object):

def __init__(self):

self.__list = []

def push(self,item):

self.__list.append(item)

def pop(self):

return self.__list.pop()

#返回栈顶元素

def peek(self):

if self.__list:

return self.__list[-1]

else:

return None

def is_empty(self):

return self.__list == []

def size(self):

return len(self.__list)

if __name__ == '__main__':

s = Stack()

二、队列:

#队列实现,先进先出

class Queue(object):

def __init__(self):

self.__list = []

def enqueue(self,item):

self.__list.append(item)

def dequeue(self):

return self.__list.pop(0)

def is_empty(self):

return self.__list == []

def size(self):

return len(self.__list)

if __name__ == '__main__':

q = Queue()

python 栈和队列的区别_Python 栈与队列相关推荐

  1. 栈和队列的区别,栈和堆的区别

    栈和队列的区别: 栈的插入和删除操作都是在一端进行的,而队列的操作却是在两端进行的. 栈是先进后出,队列是先进先出. 栈只允许在表尾一端进行插入和删除,队列只允许在表尾一端进行插入,在表头一端进行删除 ...

  2. 栈和队列的区别,栈和堆得区别

    栈和队列的区别: 1.栈是先进后出.队列是先进先出. 2.栈只允许在一端进行插入和删除,队列则在表的一段插入另一端删除. 3.在栈中遍历数据需要扫描全部数据,所以比较慢.而在队列中可以从两端进行所以速 ...

  3. 栈和队列的区别与栈和堆的区别

    1.栈和队列的区别? 栈的插入和删除操作都是在一端进行的,而队列的操作却是在两端进行的. 队列先进先出,栈先进后出. 栈只允许在表尾一端进行插入和删除,而队列只允许在表尾一端进行插入,在表头一端进行删 ...

  4. python post与get的区别_python中get和post有什么区别

    更多编程教程请到:菜鸟教程 https://www.piaodoo.com/ 友情链接: 高州阳光论坛https://www.hnthzk.com/ 人人影视http://www.sfkyty.com ...

  5. python str和repr的区别_python str与repr的区别

    尽管str(),repr()和"运算在特性和功能方面都非常相似,事实上repr()和"做的是完全一样的事情,它们返回的是一个对象的"官方"字符串表示,也就是说绝 ...

  6. python2 队列的使用_python双端队列原理、实现与使用方法分析

    本文实例讲述了python双端队列原理.实现与使用方法.分享给大家供大家参考,具体如下: 双端队列 双端队列(deque,全名double-ended queue),是一种具有队列和栈的性质的数据结构 ...

  7. python和c的语法区别_python与c语言的语法有哪些不一样的

    Python 是一种跨平台的计算机程序设计语言. 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言.最初被设计用于编写自动化脚本 (shell),随着版本的不断更新和语言新功能的添加,越 ...

  8. python的数组和元组区别_python中数组,列表,元组的区别、定义、功能

    准确的来说,在python中是没有数组类型的,python中取而代之的是列表和元组.列表比元组好用,因为元组一旦定义就没法修改.而列表不仅可以和数组一样按索引访问,还有一堆的功能. 列表: (1)添加 ...

  9. java栈和堆的区别_java 栈 和 堆 的区别

    转载: 一.java栈 Java 栈总是和线程关联在一起,每当创建一个线程时,JVM就会为这个线程创建一个对应的Java栈,在这个Java栈中又会含有多个栈(Frames),这些栈帧是与每个方法关联起 ...

最新文章

  1. 虚拟专题:知识图谱 | 流程工业控制系统的知识图谱构建
  2. SpringMVC自定义注入controller变量
  3. Android 8.0 学习(14)---Android8.0适配分析
  4. 随想录(qemu的学习)
  5. HDU2029 Palindromes _easy version【入门】
  6. asp.net 获取IP地理位置的几个主要接口
  7. 从0开始学习 GitHub 系列之「05.Git 进阶」
  8. html5-微格式-时间的格式
  9. STM32——整形变量转换为字符变量并通过串口发送出去
  10. linux搭建邮件服务器
  11. 易语言组合框基本属性方法事件
  12. WINCC报表 VBS脚本链接SQL Server数据库 日报月报 导出EXCEL PDF
  13. Chrome浏览器及调试教程
  14. vue项目 情侣空间 纪念日功能模块
  15. ARDUINO:控制两台步进电机同步运转
  16. numpy pandas matplotlib 学习笔记
  17. 重构改善代码--代码的坏味道
  18. ChatGPT入门案例|商务智能对话客服(二)
  19. windows 蓝屏 BCCode代码解释
  20. golang 记一次data race排查过程

热门文章

  1. MessageBeep sndPlaySound PlaySound 音频播放
  2. 2021中国企业服务新趋势报告
  3. 智能手机发展集体遭遇新瓶颈 中兴天机Axon M率先突围
  4. Three.js - 实现一辆坦克沿路径行驶(十二)
  5. win10网卡消失适配器感叹号问题
  6. 华为p60系列超级快充 Turbo技术,轻松搞定充电困扰!
  7. 一步步解析SVO代码(二)---初始化
  8. python GUI 绑定事件
  9. 今天写些有用的,关于学习的,和关于40期项目读后感的一些想法
  10. 微信通知设置全开仍然需要打开界面才有消息提醒?亲测神奇偏方,还原所有设置前必须试一试的方法