优先级队列和队列有什么区别?

 我来答
匿名用户
2013-07-26
展开全部
优先级队列 是不同于先进先出队列的另一种队列。每次从队列中取出的是具有最高优先权的元素
  优先队列的类定义
  #include <assert.h>
  #include <iostream.h>
  $include <stdlib.h>
  const int maxPQSize = 50; //缺省元素个数
  template <class Type> class PQueue {
  public:
  PQueue ( );
  ~PQueue ( ) { delete [ ] pqelements; }
  void PQInsert ( const Type & item );
  Type PQRemove ( );
  void makeEmpty ( ) { count = 0; }
  int IsEmpty ( ) const
  { return count == 0; }
  int IsFull ( ) const
  { return count == maxPQSize; }
  int Length ( ) const { return count; }
  private:
  Type *pqelements; //存放数组
  int count; //队列元素计数
  }
  优先队列是0个或多个元素的集合,每个元素都有一个优先权或值,对优先队列执行的操作有1) 查找;2) 插入一个新元素;3) 删除.在最小优先队列(min priorityq u e u e)中,查找操作用来搜索优先权最小的元素,删除操作用来删除该元素;对于最大优先队列(max priority queue),查找操作用来搜索优先权最大的元素,删除操作用来删除该元素.优先权队列中的元素可以有相同的优先权,查找与删除操作可根据任意优先权进行.
  最大优先权队列的抽象数据类型描述如ADT 9-1所示,最小优先队列的抽象数据类型描述与之类似,只需将最大改为最小即可.
  ADT 最大优先队列的抽象数据类型描述抽象数据类型
  M a x P r i o r i t y Q u e u e{
  实例 有限的元素集合,每个元素都有一个优先权
  操作
  Create ( ):创建一个空的优先队列
  Size ( ):返回队列中的元素数目
  Max ( ):返回具有最大优先权的元素
  I n s e rt (x):将x插入队列
  DeleteMax (x):从队列中删除具有最大优先权的元素,并将该元素返回至x
  }
  优先队列插入和删除元素的复杂度都是O(lgn),所以很快。
  另一种描述方法是采用有序线性表,当元素按递增次序排列,使用链表时则按递减次序排列,这两种描述方法的删除时间均为( 1 ),插入操作所需时间为(n).
  例:
  假设我们对机器服务进行收费.每个用户每次使用机器所付费用都是相同的,但每个
  用户所需要服务时间都不同.为获得最大利润,假设只要有用户机器就不会空闲,我们可以把
  等待使用该机器的用户组织成一个最小优先队列,优先权即为用户所需服务时间.当一个新的
  用户需要使用机器时,将他/她的请求加入优先队列.一旦机器可用,则为需要最少服务时间
  (即具有最高优先权)的用户提供服务.
  如果每个用户所需时间相同,但用户愿意支付的费用不同,则可以用支付费用作为优先权,
  一旦机器可用,所交费用最多的用户可最先得到服务,这时就要选择最大优先队列.
匿名用户
推荐于2016-08-04
展开全部
  队列就像平时买东西排队一样,从一个队伍的后面进入这个队伍,然后排队,直到走到队伍最前面(队首)才能出去。
  队列就是采用FIFO(first in first out )原则模拟现实生活中这种排队模型的一种数据结构
  优先队列是对队列的进一步抽象,比如五个人排队,其中有一个是老年人,那么老年人就会自动被排到最前面。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
夏西允
2013-05-07 · TA获得超过350个赞
知道小有建树答主
回答量:234
采纳率:0%
帮助的人:101万
展开全部
优先级队列可以自定义优先级别在队列中优先查找级别高的数据,队列只能是先进先出,即先进入的数据级别高,后进入的级别低。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式