ИМХО: нам не нужно PriorityQueue, если есть LinkedList. Я могу отсортировать очередь с LinkedList быстрее, чем с PriorityQueue. например,
Queue list = new PriorityQueue();
list.add("1");
list.add("3");
list.add("2");
while(list.size() > 0) {
String s = list.poll().toString();
System.out.println(s);
}
Я считаю, что этот код работает слишком долго, потому что каждый раз, когда я добавляю элемент, он сортирует элементы. но если я буду использовать следующий код:
Queue list = new LinkedList();
list.add("1");
list.add("3");
list.add("2");
List lst = (List)list;
Collections.sort(lst);
while(list.size() > 0) {
String s = list.poll().toString();
System.out.println(s);
}
Я думаю, что этот код будет отсортирован только один раз, и он будет быстрее, чем с помощью PriorityQueue. Таким образом, я могу один раз отсортировать свой LinkedList, прежде чем использовать его, в любом случае, и он будет работать быстрее. И даже если это происходит в одно и то же время, мне не нужен PriorityQueue, нам действительно не нужен этот класс.