题目
解决代码及点评
/* 判断某个序列是否出栈序列,比如 4 3 5 2 1,是1,2,3,4,5的出栈序列 解决方法: 使用栈数据结构,第一个栈存原始数据1,2,3,4,5,第二个栈是活动栈 第三个栈保存 4,3,5,2,1 做法是通过将原始数据栈往活动栈丢,没丢一次判断活动栈顶和第三个栈顶数据是否相同,如果相同则都弹出 当第三个栈空了时,说明成功 当第一个栈空了,依旧没能匹配到和第三个栈顶相同的元素时,说明失败 */ #include <iostream> #include <stack> using namespace std; // 栈类 class Stack { public: int* _data; // 数据 int _size; // 数据大小 int _top; // 栈顶元素 // 构造函数,初始化成员变量 Stack(int siz