入栈出栈
void popSeq(list<int>in,stack<int> st,vector<int> out,vector<vector<int>>& res,int len) { if (out.size() == len) { res.push_back(out); return; } //出栈 if (st.size() > 0) { out.push_back(st.top()); st.pop(); popSeq(in, st, out, res, len); st.push(out.back()); out.pop_back(); } //入栈 if (in.size() > 0) { st.push(in.front()); in.pop_front(); popSeq(in,st,out,res,len); in.push_front(st.top()); st.pop(); }