【发布时间】:2017-04-27 15:12:44
【问题描述】:
我的程序要求我从两个队列中获取数据并将它们排序到一个优先级队列中。第一个队列用于飞机着陆,它优先于第二个试图起飞的飞机队列。我无法理解如何设置优先级队列并获取两个单独的队列并将它们正确排序到优先级队列中。
【问题讨论】:
标签: java queue priority-queue
我的程序要求我从两个队列中获取数据并将它们排序到一个优先级队列中。第一个队列用于飞机着陆,它优先于第二个试图起飞的飞机队列。我无法理解如何设置优先级队列并获取两个单独的队列并将它们正确排序到优先级队列中。
【问题讨论】:
标签: java queue priority-queue
优先级队列应该是自动排序的。 也就是说,当您轮询时,它会根据指定的顺序(如果没有指定,则为自然顺序)取最少的元素。 因此,如果您想使用优先级队列,请编写一个比较器,以便首先选择第一个队列中的元素(可能使用包装类)。
更好的解决方案可能是编写自己的队列。从这个队列轮询时,只需检查第一个队列是否有可用项目,如果没有可用项目,请检查第二个。
【讨论】: