in Java, ich weiß nicht, wie man eine neue PriorityQueue
mit neuen Komparator aber ohne die Warteschlange Länge? Wie kann ich es erstellen?Wie erstelle ich eine PriorityQueue mit neuem Komparator und keiner angegebenen Anfangskapazität?
Ich weiß, dass ich schreiben kann:
Queue<Node> theQueue = new PriorityQueue<Node>(15,new Comparator<Node>();
Aber ich hoffe, dass die Warteschlange können Werke wie LinkedList
, ich meine seine Länge nicht festgelegt ist, wie kann ich es erklären?
Verstanden. Und noch eine Frage: Wenn ich lokale Strahlsuche machen möchte, muss ich die PriorityQueue auf eine feste Zahl beschränken (zum Beispiel: 10), wie kann ich die Länge einer PriorityQueue festlegen? – lkkeepmoving
Verwenden Sie eine size-bounded ['LinkedBlockingQueue'] (http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/LinkedBlockingQueue.html). –
Aber die LinkedBlockingQueue-Klasse funktioniert anders als PriorityQueue, oder? Kann eine Warteschlange die Funktion von LinkedBlockingQueue und PriorityQueue haben? – lkkeepmoving