栈的压入、弹出序列 java

栈的压入、弹出序列

http://www.nowcoder.com/questionTerminal/d77d11405cc7470d82554cb392585106

```

```import java.util.*;

public class Solution {

public boolean IsPopOrder(int [] pushA,int [] popA) {
   Stack<Integer> stack1 = new Stack<>();
   Stack<Integer> stack2 = new Stack<>();

    for(int i=popA.length-1;i>=0;i--){
        stack2.push(popA[i]);
    }
    stack1.push(pushA[0]);
    int i=1;
    while((!stack2.empty()) && i<= pushA.length){

        if( stack1.peek().equals( stack2.peek() ) ){
            stack2.pop();
            stack1.pop();
        }else{
            if(i< pushA.length){
                 stack1.push(pushA[i]);
            }
            i++;
        }
    }
    if(stack2.empty()){
        return true;
    }else{
        return false;
    }


}

}

全部评论

相关推荐

01-30 22:03
门头沟学院 Java
用微笑面对困难:我滴妈,【俩月】【实习】【主管】仨debuff吃满了,独立设计开发的项目写了绝大占比的运营板块,你独立开发,那维护、问题复盘、日志更新、bug、策划书全是自己整的? 不建议写那么大,可以从小出发更容易
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务