多图详解:二叉堆原理并手写一个优先队列

欢迎大家关注公众号「JAVA前线」查看更多精彩分享文章,主要包括源码分析、实际应用、架构思维、职场分享、产品思考等等,同时欢迎大家加我个人微信「java_front」一起交流学习

1 优先队列应用
队列是一种先进先出的数据结构,先放入队列的元素会先出队列。但是有这样一种场景,我们希望出队列顺序不是根据放入队列顺序,而是根据元素本身具有的优先级,例如元素优先级高则先出队列,这时就要使用优先队列。

1.1 应用一
我们设想这样一种发送消息的业务场景:消息具有优先级属性,在同一个队列中优先发送优先级高的消息,优先级定义如下:
// 优先级 P1 > P2 > p3
public enum PriorityEnum {

P1(1, "优先级1"),

P2(2, "优先级2"),

P3(3, "优先级3")

;
}

消息对象定义如下:
pub

多图详解:二叉堆原理并手写一个优先队列最先出现在Python成神之路

版权声明:
作者:Alex
链接:https://www.techfm.club/p/11988.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>