数据结构:队列(Python语言实现)

这篇具有很好参考价值的文章主要介绍了数据结构:队列(Python语言实现)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

(一)队列的基本结构

队列是一种先进先出的数据结构(特殊的线性结构),在队列尾部插入新元素,在队列头部删除元素。

python队列的基本操作,链表,数据结构,python,算法,Powered by 金山文档

一般队列的基本操作如下:

  1. create:创建空队列。

  1. enqueue:将新元素加入队列的尾部,返回新队列。

  1. dequeue:删除队列头部元素,返回新队列。

  1. front:返回队列头部的元素值。

  1. isempty:判断队列是否为空,若队列为空,返回True,否则返回False。

  1. length:返回队列的长度。

队列基本操作可以通过列表或python中封装的queue类模块进行实现。

(二)队列的实现

(1)列表形式

利用列表来模拟队列的基本操作,列表的appen()方法相当于入队,在队列尾部插入一个新元素,pop()方法相当于出队,删除队列头部的元素。其实现代码如下:


class queue:
    def __init__(self):
        self.list = []

    # 入队
    def enqueue(self, item):
        self.list.append(item)

    # 出队
    def dequeue(self):
        self.list.pop(0)

    # 判断是否为空
    def isempty(self):
        return len(self.list) == 0

    # 队列长度
    def length(self):
        return len(self.list)

    # 打印队列
    def print_queue(self):
        print(self.list)

    # 从队头元素开始打印队列
    def print_element(self):
        for i in self.list:
            print(i)

q = queue()
print('队列是否为空:', q.isempty())
q.enqueue('a')
q.enqueue('b')
q.enqueue('c')
q.print_queue()
q.dequeue()
q.print_element()
print('队列长度为:', q.length())

(2)queue模块

Python的queue类模块中提供了一种先进先出的队列类型Queue,同时在创建队列的过程中,队列的长队既可以限制也可以不限制,在创建队列时利用Queue(maxsize=0),maxsize小于等于0时,表示队列的长度不受限制,否则表示限制。Queue主要有以下几种方法:

put():在队列尾部添加元素。

get():从队列头部取出元素,返回队列头部元素。

empty():判断队列是否为空。

full():判断队列是否达到最大长度限制。

qsize():返回队列当前长度。文章来源地址https://www.toymoban.com/news/detail-642747.html


from queue import Queue

q = Queue(maxsize=0)    # 创建队列
q.put(1)    # 入队
q.put(2)    # 入队
print(q.queue)
q.get()     # 出队
print(q.queue)
print('队列长度:', q.qsize())
print('队列是否为空:', q.empty())
print('队列是否为满:', q.full())

到了这里,关于数据结构:队列(Python语言实现)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构 队列(C语言实现)

            任其事必图其效;欲责其效,必尽其方。——欧阳修;本篇文章主要写的是什么是队列、以及队列是由什么组成的和这些组成接口的代码实现过程。( 大多细节的实现过程以注释的方式展示请注意查看 )    话不多说安全带系好,发车啦 (建议电脑观看) 。 附

    2024年02月11日
    浏览(41)
  • 数据结构——队列(C语言实现)

    队列是一种特殊的线性结构,数据只能在一端插入,数据也只能在另一端进行删除。插入数据的那一端称之为队尾,插入数据的动作称之为入队。删除数据的那一端称之为队头,删除数据的动作称之为出列。队列遵守的是FIFO原则(Frist In First Out),即先进先出原则。 队列具

    2024年02月03日
    浏览(69)
  • 数据结构-队列(C语言的简单实现)

    队列也是一种数据结构,队列也可以用来存放数字 每次只能向队列里将入一个数字,每次只能从队列里获得一个数字 在队列中,允许插入的一段称为入队口,允许删除的一段称为出队口 它的原则是先进先出(FIFO: first in first out),先进入队列的数据先出去,后进入的后出去。

    2024年02月13日
    浏览(32)
  • 数据结构-队列的实现(C语言版)

    前言         队列是一种特殊的线性表,它只允许在一端对数据进行插入操作,在另一端对数据进行删除操作的特殊线性表,队列具有先进先出的(FIFO)的 特性,进行插入操作的一端称为队尾,进行删除操作的一端称为队头。         队尾:元素在队尾入队。插入操作。

    2024年02月13日
    浏览(36)
  • 【数据结构初阶】六、线性表中的队列(C语言 -- 链式结构实现队列)

    ========================================================================= 相关代码gitee自取 : C语言学习日记: 加油努力 (gitee.com)  ========================================================================= 接上期 : 【数据结构初阶】五、线性表中的栈(C语言 -- 顺序表实现栈)_高高的胖子的博客-CSDN博客  

    2024年02月08日
    浏览(28)
  • 数据结构初阶(用C语言实现简单数据结构)--栈和队列

    ✨✨欢迎来到T_X_Parallel的博客!!       🛰️博客主页:T_X_Parallel       🛰️专栏 : 数据结构初阶       🛰️欢迎关注:👍点赞🙌收藏✍️留言 这小猫真好看 言归正传,通过上篇有关顺序表和链表的博客,可以了解到线性表的一些大致特征,这篇博

    2024年02月08日
    浏览(26)
  • (详解)数据结构-----------栈与队列 c语言实现

    本章将会详细讲解以下知识点: 目录 一:栈         1:栈的定义,栈的特点         2:用什么结构来实现栈与原因的分析?         3:  (超详解)栈的常用接口并且附上测试用例 二:队列         1:队列的定义,队列的特点         2:用什么结构来实现队列与原因的分析

    2024年02月11日
    浏览(32)
  • 入门数据结构,c语言实现循环队列实现(详细篇)。

    目录 一、前言 二、循环队列的概念 三、实现循环队列 1、头文件与特殊函数介绍 2、循环队列的结构体 3、队列的初始化 4、判断队列是否为空 5、队列的进队操作 6、队列的出队操作 7、返回队头 8、返回队列长度 9、放回队列容量大小 10、销毁队列 四、完成队列(队列完整代

    2024年02月06日
    浏览(32)
  • 【数据结构】队列基本操作的实现(C语言)

    🚀 作者简介:一名在后端领域学习,并渴望能够学有所成的追梦人。 🐌 个人主页:蜗牛牛啊 🔥 系列专栏:🛹数据结构、🛴C++ 📕 学习格言:博观而约取,厚积而薄发 🌹 欢迎进来的小伙伴,如果小伙伴们在学习的过程中,发现有需要纠正的地方,烦请指正,希望能够与

    2024年02月16日
    浏览(34)
  • Python数据结构与算法-数据结构(列表、栈、队列、链表)

    数据结构是指相互之间存在这一种或者多种关系的数据元素的集合和该集合中元素之间的关系组成。 简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中。 比如:列表、集合与字典等都是一种数据结构。 N.Wirth:“程序=数据结构+算法” 数据结构按照其 逻辑结

    2024年02月08日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包