思路
pushV的内容是依次输入的内容,用for即可。
在每次压栈时进行判断,栈顶元素是否和popV中的数据相同。
如果相同popV指针向后移动,依次进行匹配(这里需要循环判断),因为每轮判断中只能压入一个元素,但是弹出可以连续弹出。
class Solution {public:bool isPopOrder(vector<int> pushV,vector<int> popV) {// if(pushV.size())if(pushV.size() != popV.size()) return false;else if(pushV.size() == 0) return true;stack<int> stk;for(int i = 0,j = 0; i < pushV.size(); i ++){int x = pushV[i];stk.push(x);while(stk.size() && stk.top() == popV[j]){stk.pop();j++;}}return stk.empty();}};
