queue函数库,queue函数python
漂亮!
序队列是一种先进先出(FIFO)的数据结构,类似于生活中的队列,即先来先服务。这一特性决定了它具有一定的优先级意义,可以用于任务调度等场景。队列模型如图所示:
图一。队列模型
一号队列。java队列中的接口类java通过定义队列接口类和一系列行为来描述队列。队列操作一般包括:出队和入队,队列接口为这些操作定义了三种行为:
插入:加入队列并将一个元素插入队列;移除:从队列中出列并移除元素;检查:从队列中获取一个元素,但不要移除它;这些行为都分为两种形式:
Fail-fast,立即抛出异常并返回特定值。根据实现的不同,返回null或false队列的UML类图如下所示:
图二。队列UML图
add():向队列中添加一个元素。如果队列已满,将抛出IllegalStateException异常。添加成功,返回true;offer():类似于add操作,因为它将元素插入到队列中,除了如果队列已满,insert返回false;remove():获取并删除队列头部的元素。如果队列为空,将抛出NoSuchElementException异常;poll():类似于remove操作,只是如果队列为空,则为null会被退回;element():获取但不删除队列头元素。如果队列为空,将抛出NoSuchElementException异常;peek():与元素操作非常相似,只是如果队列为空,则返回null;2.队列的实现有很多种,不同的实现有不同的应用场景。首先总结其五花八门的类型,然后分析一些常见的队列。
根据上面的UML图,根据不同的特征,队列可以大致分为三种类型:
队列的UML类图如下:
图二。队列UML图
队列的直接实现是双向队列:队列的头和尾都可以入队和出队。BlockingQueue:阻塞队列,一些出队和入队操作将被阻塞。转载于:https://www.cnblogs.com/lxyit/p/9045831.html
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。