优先队列是最强大数据结构之一。它在企业应用中不常见,但我们经常在编码挑战和算法实现中使用它。
在本教程中,我们将学习如何使用比较器(Comparators)与优先队列(PriorityQueues)以及如何改变这些队列中的排序顺序。然后我们将检查一个更通用的例子,使用自定义类,并了解如何将类似的逻辑应用到Pair类。
对于Pair类,我们将使用Apache Commons的实现。然而,有多种选项可供选择,我们可以选择最适合我们需求的那个。
首先,让我们讨论数据结构本身。这个结构的主要超能力是在将元素推入队列时保持它们的顺序。
然而,像其他队列一样,它不提供访问队列内元素的API。我们只能访问队列前面的元素。
大约 6 分钟