このように2つのキューを作成する場合:
ArrayQueue q1 = new ArrayQueue();
ArrayQueue q2 = new ArrayQueue();
for (int i = 0; i < 5; i++) {
q1.enqueue(new Integer(i));
}
for (int i = 5; i < 10; i++) {
q2.enqueue(new Integer(i));
}
System.out.println("q1: " + q1);
System.out.println("q2: " + q2);
とを出力q1: 4,3,2,1,0
しq2: 9,8,7,6,5
ます。
q2
キューq1
をインターリーブされた要素を使用してキューにマージするメソッドが必要です。したがって、println
'dが再び出力される場合:q1: 0,5,1,6,2,7,3,8,4,9
およびq2: 9,8,7,6,5
。
私のクラスにはすべての適切なメソッドが含まれています、、、、、、...私enqueue
のメソッド名は次のとおりです。dequeue
peek
isEmpty
size
doubleSize
public void mergedQs(ArrayQueue q) {
}
基本的に、オブジェクトを2つのキューに追加してから、2番目のキューを最初のキューにマージします(オブジェクトを追加するだけではありません)。理想的には、それらをキューのままにしておきたいので、それらをキャストしたり、ArrayListを使用したりすることは避けたいと思います。