堆栈分解为偶数和奇数

时间:2016-10-11 18:49:26

标签: java methods stack

这段代码将Stack分解为偶数和奇数,如何 做even.push和odd.push工作?

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;
}

1 个答案:

答案 0 :(得分:0)

push方法将对象传递到堆栈顶部。

evenodd只是堆栈的名称。