题解 | #栈的压入、弹出序列#
栈的压入、弹出序列
http://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106
class Solution { public: bool IsPopOrder(vector pushV,vector popV) {
stack<int> st;
int i,j=0,n=pushV.size();
for(i=0;i<n;i++)
{
//第一个元素入栈
st.push(pushV[i]);
//栈不为空同时栈顶元素等于popV[j]时,栈顶元素出栈
while(!st.empty() && st.top()==popV[j])
{
st.pop();
j++;
}
}
//栈中元素全部出栈时为真,否则为假
if(st.empty())
{
return true;
}
else {
return false;
}
}
};