Использовать другую очередь. Итак, вы начинаете с двух очередей:
q1: [2,5,3,1,2,4]
q2: []
Вы знаете длину q1
.
Теперь удалите предмет из головы q1
. Если это даже, добавьте это к q2
. Если это странно, повторно добавьте его в q1
. Сделайте это для каждого элемента в q1
. Это выглядит так:
step 1:
q1: [5,3,1,2,4]
q2: [2]
step 2:
q1: [3,1,2,4,5]
q2: [2]
step 3:
q1: [1,2,4,5,3]
q2: [2]
step 4:
q1: [2,4,5,3,1]
q2: [2]
step 5:
q1: [4,5,3,1]
q2: [2,2]
step 6:
q1: [5,3,1]
q2: [2,2,4]
Теперь, когда они разделены на четные и нечетные, вы удаляете вещи из q1
и добавляете их к q2
.