946. 验证栈序列

class Solution {
public:
    bool validateStackSequences(vector<int>& pushed, vector<int>& popped) {
        stack<int >  a;
        int pu=0,po=0;
        while(pu<pushed.size()&&po<popped.size()){
            if (pushed[pu]!=popped[po]){
                a.push(pushed[pu]);
                pu++;
            }else{
                pu++;
                po++;
                while (a.size()>0&&a.top()==popped[po]){
                    po++;
                    a.pop();
                }
                
            }
        } 
        return po==popped.size();
        
    }
};

猜你喜欢

转载自blog.csdn.net/a15929748502/article/details/88536023