首页 > 试题广场 >

讲一下PriorityQueue。

[问答题]
在 Java 中,PriorityQueue 是一个基于 堆(Heap)结构实现的队列,位于 java.util 包下。它和普通队列不同,元素出队顺序不是按插入顺序,而是根据元素的优先级顺序来决定。 特点如下: 默认是小顶堆:元素按照自然顺序(从小到大)排列,出队的是最小值; 不允许 null 元素,可以有重复; 线程不安全,多线程下需外部同步; 可以自定义优先级排序,通过传入 Comparator 比较器实现大顶堆或自定义逻辑; 常用于任务调度、Top K 问题、路径搜索等场景。
发表于 2025-06-25 11:13:24 回复(0)