首页  >  文章  >  Java  >  优先级队列

优先级队列

王林
王林原创
2024-07-20 09:01:101018浏览

优先级队列可以使用堆来实现。普通队列是先进先出的数据结构。元素被追加到队列的末尾并从开头删除。在优先级队列中,元素被分配优先级。访问元素时,首先删除优先级最高的元素。例如,医院的急诊室为患者分配优先号码;优先级最高的患者首先得到治疗。

优先级队列可以使用堆来实现,其中根是队列中优先级最高的对象。堆是在堆排序中引入的。优先级队列的类图如下图所示。它的实现在下面的代码中给出。

Image description

Image description

下面的代码给出了为患者使用优先级队列的示例。 Patient 类在第 21-38 行中定义。在第 6-9 行中创建了四个具有相关优先级值的患者。第 8 行创建一个优先级队列。患者排在第 12-15 行。 18 号线将一名患者从队列中移出。

Image description

辛迪(优先级:7)蒂姆(优先级:5)约翰(优先级:2)吉姆(优先级:1)

以上是优先级队列的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn