如何删除优先队列的尾元素?我正在尝试使用优先级队列实现束搜索,一旦优先级队列已满,我想删除最后一个元素(优先级最低的元素)。
谢谢!
最佳答案
没有简单的方法。将元素从原始元素复制到新元素(最后一个元素除外)。
PriorityQueue removelast(PriorityQueue pq)
{
PriorityQueue pqnew = new PriorityQueue();
while(pq.size() > 1)
{
pqnew.add(pq.poll());
}
pq.clear();
return pqnew;
}
称为
pq = removelast(pq);
关于java - 删除优先级队列的尾元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15117246/