0
private ArrayQueue<E> merge(ArrayQueue<E> q1, ArrayQueue<E> q2) throws ArrayQueueException
{
ArrayQueue<E> mergeQueue = new ArrayQueue<E>(q1.size() + q2.size());
ArrayQueue<E> smallestQueue = smallestQueue(q1, q2);
ArrayQueue<E> biggestQueue = biggestQueue(q1, q2);
for (int index = 0; index < smallestQueue.size(); index++)
{
E elementOne = smallestQueue.dequeue();
E elementTwo = biggestQueue.dequeue();
if (elementOne.compareTo(elementTwo) < 0)
{
mergeQueue.enqueue(elementOne);
mergeQueue.enqueue(elementTwo);
}
else
{
mergeQueue.enqueue(elementTwo);
mergeQueue.enqueue(elementOne);
}
}
for (int index = 0; index < biggestQueue.size(); index++)
{
mergeQueue.enqueue(biggestQueue.dequeue());
}
return (mergeQueue);
}
私は、2つのキューをマージする方法を作成することに取り組んでいます。両方のキューが同じサイズである場合は上の試みはうまくいきますが、それ以外の場合は間違っています。特定の順序で2つのキューをマージする方法
これを実装するにはどうすればよいでしょうか?
ありがとうございました。
どこArrayQueueのjavadocですか?これは標準的なJavaクラスではないので、javadocなしでできることは、それがどのように機能するかを推測することです。 –