美文网首页
026 Python语法之栈与堆

026 Python语法之栈与堆

作者: Luo_Luo | 来源:发表于2017-09-12 11:18 被阅读0次

栈的概念

  1. 一种结构体
  2. 数据先进后出

用列表模拟栈

mystack = []    # 列表
mystack.append(1)
mystack.append(2)
mystack.append(3)

while len(mystack) != 0:
    value = mystack.pop()
    print(value)

用栈深度遍历一个路径下的文件盒文件夹

队列1

import colections

myqueue = colections.deque([])

队列2

import queue

q1 = queue.Queue(maxsize=0)     # maxsize=0默认不限制元素个数
q1.qsize()          # 计算队列中数据的数量
q1.empty()          # 判断队列是否为空
q1.full()           # 判断队列是否已满
q1.get()            # 阻塞取出数据,如果没有数据会等待
q1.get_nowait()     # 非阻塞取出数据,如果没有数据会报错
q1.put("123")       # 阻塞往队列中添加数据,如果数据满了会等待
q1.put_nowait("12") # 非阻塞添加数据,如果数据满了会报错
q1.join()
q1.task_done()

介绍

  1. 参数中block是阻塞的意思
  2. 参数中timeout是等待超时的意思

队列3

import queue

q1 = queue.PriorityQueue(maxsize=0)     # maxsize=0默认不限制元素个数
q1.put((1,"fdsg"))
q1.put((3,"fdsfg"))
q1.put((2,"ffdsg"))

介绍

  1. PriorityQueue队列默认按照第一个元素排序
  2. 注意必须同一类型

相关文章

  • 026 Python语法之栈与堆

    栈 栈的概念 一种结构体 数据先进后出 用列表模拟栈 用栈深度遍历一个路径下的文件盒文件夹 队列1 队列2 介绍 ...

  • 堆与栈

    var a = 2; var b = a; b = 100; console.log('a', a); var o...

  • 堆与栈

    分区: 1,栈区(stack)由编译器自动分配释放,存放函数(方法)的参数值,局部变量的值,栈是有低地址向高地址扩...

  • 栈与堆

    堆:数据结构类型自下而上。栈:数据结构类型自上而下。 我们常看到的Objc变量本质上是一个指针,指向一个对象,对象...

  • 堆与栈

    请你解释一下,内存中的栈(stack)、堆(heap) 和静态区(static area) 的用法。 考察点:堆栈...

  • python内置的堆、栈和队列

    本文用于介绍python中内置的堆、栈和队列结构方法,并且计较这些方法的差异与使用场景。 heapq 堆队列 he...

  • Block详解

    block 一、前期准备知识 1.1 堆与栈基本概念1.2 终端与clang编译常用命令 1.1 堆与栈简介: 栈...

  • 2021-09-06 [superset] 二次开发相关文章收集

    相关技术栈 python flask框架 熟悉Flask—login组件 常用ES6 语法 语法传送门[https...

  • jvm之栈、堆

    1. Java Virtual Machine ​ 人群当中,一位叫java的小伙子正向周围一众人群...

  • 内存--堆与栈

    <一>申请后的系统响应 栈:存储每一个函数在执行的时候都会向操作系统索要资源,栈区就是函数运行时的内存,栈区中的变...

网友评论

      本文标题:026 Python语法之栈与堆

      本文链接:https://www.haomeiwen.com/subject/njccsxtx.html