class Solution {
public:
bool IsPopOrder(vector<int> pushV,vector<int> popV) {
int i = 0;
stack<int>stk;
for(int j = 0; j < popV.size(); j++){
//将pushV中未入栈的元素入栈
while(i < pushV.size() && pushV[i] != popV[j]){
stk.push(pushV[i]);
i++;
}
if(i != pushV.size()){
i++;
}else{
//比较出栈序列是否与实际出栈顺序一致
if(popV[j] != stk.top()){
return false;
}else{
stk.pop();
}
}
}
return true;
}
};
原文:https://www.cnblogs.com/chengsheng/p/10656394.html