元素出栈、入栈顺序的合法性
2017-09-19 18:10
267 查看
如:入栈的序列(1,2,3,4,5),出栈序列为(4,5,3,2,1),则合法。
入栈的序列(1,2,3,4,5),出栈序列为(4,5,2,3,1),则不合法。
入栈的序列(1,2,3,4,5),出栈序列为(4,5,2,3,1),则不合法。
template<class T> class Legitimacy { public: bool Legitimacy(const T* cur, const T* dest, int csize,int dsize) { assert(cur); assert(dest); if (dsize!=csize || dsize==0) { return false; } while (*dest!=0 && *cur!=0) { s.push(*dest++); if (s.top()!=*cur) { s.push(*dest++); } while (!s.empty() && s.top()==*cur) { s.pop(); cur++; } } return s.empty() ? true : false; } private: stack<T> s; };
相关文章推荐
- 数据结构面试题/元素出栈,入栈顺序的合法性
- 元素出栈、入栈顺序的合法性。
- 元素出栈、入栈顺序的合法性/计算一个整数二进制位中1的个数。
- 判断元素出栈,入栈顺序的合法性
- 判断元素出栈、入栈顺序的合法性【每日一题】
- 判断元素出栈,入栈顺序的合法性
- 元素出栈,入栈顺序的合法性。如入栈的序列(1,2,3,4,5)。出栈序列为(4,5,3,2,1)
- 元素出栈、入栈顺序的合法性(判断一个字符串是否按照出栈顺序)
- 元素的出栈、入栈顺序的合法性。
- ~元素出栈、入栈顺序的合法性~
- 判断元素出栈,入栈顺序的合法性
- 【每日一题】元素出栈、入栈顺序的合法性。如:入栈的序列(1,2,3,4,5),出栈序列为(4,5,3,2,1),则合法。
- 元素出栈、入栈顺序的合法性
- 元素出栈、入栈顺序的合法性
- 元素出栈、入栈顺序的合法性
- 元素出栈、入栈顺序的合法性
- 元素出栈、入栈顺序的合法性。
- 判断元素出栈、入栈顺序的合法性
- 判断元素出栈、入栈顺序的合法性。如:入栈的序列(1,2,3,4,5),出栈序列为(4,5,3,2,1)是合法序列
- 判断元素出栈、入栈顺序的合法性