标签:
template<typename T> bool isPopOrder(vector<T> vec, vector<T> order) { stack<T> sta; if(vec.size() != order.size()) { return false; } int i = 0, j = 0; while(j < order.size()) { if(i < vec.size() && order[j] == vec[i]) { ++j; ++i; continue; } else if(!sta.empty() && order[j] == sta.top()) { ++j; sta.pop(); continue; } else { if(i >= vec.size() && sta.empty()) return false; sta.push(vec[i++]); } } return sta.empty(); }
输入两个整数序列,第一个表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。
标签:
原文地址:http://www.cnblogs.com/ddddddwwwxx/p/5769762.html