判断出栈序列的合法性
题目
分析
用栈暂存元素
用队列存储目的序列
向栈中存放元素(从1 开始 )
对比队头元素和栈顶的元素
相等的话栈顶元素出栈,队头元素出队,继续比较
不等的话向栈中push元素,直到有相等的元素出现
结束条件:栈满,队空,待入栈的数大于n
代码
#include <iostream>
#include <stack>
#include <queue>
using namespace std;
//对比队头元素和栈顶的元素
//相等的话栈顶元素出栈,队头元素出队,继续比较
//不等的话向栈中push元素
//结束条件:栈满,队空,待入栈的数大于n
int main(){
int n;
cin>>n;
queue<int> q