码迷,mamicode.com
首页 > 其他好文 > 详细

数据结构----------------优先队列

时间:2016-10-27 13:06:39      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:elm   --   实现   平衡   比较   insert   元素   二叉树   nbsp   

优先队列

主要用于:1.插入 

     2.删除最大元素

基于实现这两项功能,用二叉堆来实现,

分析:

____________MaxPQ<Key>implementsIterator<Key>_______________________

insert()

delMax()                           优先队列的2个主要功能

------------------------------------------------------------------------------------------------

isEmpty()         //判断是否为空

size()     //计算队列中元素的个数(就是数组的length)

max()             //返回最大元素

resize()          //加倍数组长度,必要的时候

------------------------------------------------------------------------------------------------

swim(int k)    //上浮

sink(int k)     //下沉(队列经过插入和删除后二叉树的结构有可能是不不平衡需要用这两个方法调整)

-----------------------------------------------------------------------------------------------

less(int i, int j)     //比较两个元素的大小

exch(int i, int j)    //交换两个元素

-------------------------------------------------------------------------------------------------

isMaxHeap()        //判断基于二叉树实现的堆否平衡

isMaxHeap(int k)

 

数据结构----------------优先队列

标签:elm   --   实现   平衡   比较   insert   元素   二叉树   nbsp   

原文地址:http://www.cnblogs.com/lifehrx/p/6003420.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!