我正在实现对象的优先级队列,并希望根据其属性之一搜索对象。如何检索特定对象?
我正在使用Java的PriorityQueue,并且只需要使用其属性之一(例如obj.first或obj.second)搜索对象
PriorityQueue<node> minHeap = new PriorityQueue(n+1,new Comparator<node>(){
public int compare(node a, node b){
return Integer.compare(a.sum,b.sum);
}
});
node nn = minHeap.poll();
int val = nn.first;
我想从nn中搜索属性为“ first”的堆,并从堆中获取第一个或第二个与Val匹配的条目
class node{
int first;
int second;
int sum;
public node(int a, int b, int s){
this.first = a;
this.second = b;
this.sum = s;
}
}