与java中的优先级队列混淆
Posted
技术标签:
【中文标题】与java中的优先级队列混淆【英文标题】:confusion with priority queue in java 【发布时间】:2016-08-21 09:11:52 【问题描述】:我有一些要放入优先级队列的数组索引。现在我想使用一个比较器,它应该将这个索引与同一类中的另一个数组进行比较。比较器类应该怎么写?
【问题讨论】:
显示你迄今为止尝试过的东西? 将此索引与同一类中的另一个数组进行比较 我对这个声明没有任何意义。你想比较什么?您在优先级队列中添加了什么? 【参考方案1】:假设我理解您的实际问题,如果您将这些索引映射到任何 Comparable
值(在该“外部”数组中)并且您想根据该值设置优先级,您可以简单地使用:
Comparable[] array = TheOtherClass.getArray(); // ???
Comparator<Integer> comparator = (left, right) -> array[left].compareTo(array[right]);
【讨论】:
以上是关于与java中的优先级队列混淆的主要内容,如果未能解决你的问题,请参考以下文章