2016-07-29 12 views
-1

Javaコレクションフレームワークを使用してキューを逆にしたいとします。しかし、私はそれをどうやって行えるのか理解できません。キューの逆順

Javaコレクションフレームワークを使用して、Javaでキューを元に戻すにはどうすればよいですか?

答えて

0

あなたはLinkedListウィッヒは、Java Queueを実装して使用する場合、これは非常に簡単です:

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

そうでない場合は、あなたがスタックを使用する必要があります。スタック内のキューのすべての要素をプールして取り出し、キューに追加し直します。

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

ありがとうございました。 –