题解 | #栈的压入、弹出序列#

栈的压入、弹出序列

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

public:
    bool IsPopOrder(vector<int> pushV,vector<int> popV) {
        bool flag=true;
        stack<int> test;
        int i;
        int j=0;
        //使用暴力模拟的算法
        for(i=0;i<=pushV.size()-1;i+=1){
            while(!test.empty()&&test.top()==popV[j]){
                test.pop();
                j+=1;
            }
            
            if(pushV[i]==popV[j]){
                test.push(pushV[i]);
                test.pop();
                j+=1;
            }
            else{
                 test.push(pushV[i]); 
            } 
        }
        
        while(!test.empty()){
            if(test.top()!=popV[j]){
                flag=false;
            }
            test.pop();
            j+=1;
        }
        return flag;
    }
};
全部评论

相关推荐

如题,八股刚开始学,准备好好沉淀八股,但是害怕没实习经历,简历筛选过不去,现在找实习却感觉都是已读不回,接下来该怎么安排呢?求教
Java抽象带篮子:具体背什么八股我都帮你整理好了,可以去看看我的八股专栏,这个比较详细,如果你觉得内容有点多记忆负担比较大的话,我还在更新最常问八股整理贴,是不是很贴心?
点赞 评论 收藏
分享
12-07 16:16
已编辑
四川大学 Java
点赞 评论 收藏
分享
牛客971438129号:应该是到最后offer评估阶段了,接口人告诉我先报批,报批之后定薪,最后offer评估
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务