2
이 코드는 스택을 짝수 및 홀수로 분해합니다. even.push와 odd.push는 어떻게 작동합니까?Stack Decompose into Even and odd
public static ArrayStack decompose(ArrayStack x) {
ArrayStack y = new ArrayStack(x.size()/2);
ArrayStack odd = new ArrayStack(x.size()/2+1);
ArrayStack even = new ArrayStack(x.size()/2);
while(!x.isEmpty())
{
odd.push(x.pop());
if(!x.isEmpty())
even.push(x.pop());
}
while(!odd.isEmpty())
{
x.push(odd.pop());
}
while(!even.isEmpty())
{
y.push(even.pop());
}
return y;
}