2016-07-29 11 views
-1

Ich möchte eine Warteschlange mit dem Java-Collection-Framework umkehren. Aber ich kann nicht verstehen, wie kann ich das machen?Reverse of Queue

Wie kann ich die Warteschlange in Java mithilfe von Java Collection Framework umkehren?

Antwort

0

Wenn Sie einen LinkedList Weichen verwenden implementiert Java Queue dies ist sehr einfach:

LinkedList<String> queue = new LinkedList<>(); 
    Collections.reverse(queue); 

Ansonsten haben Sie einen Stapel verwenden. Poole alle Elemente der Warteschlange im Stapel und nimm sie heraus und füge sie wieder in die Warteschlange ein.

public static <T> void reverse(Queue<T> queue) { 
    Deque<T> stack = new LinkedList<>(); 

    while (!queue.isEmpty()) { 
     stack.push(queue.poll()); 
    } 

    while (!stack.isEmpty()) { 
     queue.add(stack.pop()); 
    } 
} 
+0

vielen Dank.,. –