天天看点

剑指offer——栈的压入、弹出序列

class Solution {
public:
    bool IsPopOrder(vector<int> pushV,vector<int> popV) {
        if(pushV.empty()||popV.empty()||pushV.size()!=popV.size())
            return false;
        int j=0;
        for(int i=0;i<pushV.size();i++){
            stackin.push(pushV[i]);//先压入栈中,只比较栈顶元素
            while(!stackin.empty()&&(stackin.top()==popV[j])){
                stackin.pop();
                j++;
            }
        }
        return stackin.empty()?true:false;
    }
private:
    stack<int> stackin;
};