思路:
开一个栈依次插入pushed元素,如果栈顶元素与poped元素相同就一直弹出。
代码:
class Solution {
public:
bool validateStackSequences(vector<int>& pushed, vector<int>& popped) {
stack<int> stk;
int k = 0;
for(auto x : pushed){
stk.push(x);
while(stk.size() && k < popped.size() && popped[k] == stk.top()){
stk.pop();
k++;
}
}
return k == popped.size();
}
};
评论区