1、使用两个栈实现一个队列
最近一直再重温c++,就把最近遇到的题目和自己写的代码都记录下来吧,自己也可以复习
问题:使用两个栈实现一个队列
很经典的c++与数据结构问题,首先有思路一定要求得对栈和队列足够熟悉,我这里对于基础知识就不多展开了,上网搜或看《数据结构c语言版》。
代码:
#include<iostream>
#include<stack> //STL容器栈
//#include<queue> //队列
using namespace std;
//两个栈实现队列
//第一个栈相当于进行倒置,然后从上往下压入栈2,从栈2再弹出
class solution
{
public:
stack<int> s1;
stack<int> s2;
void push(int node){
s1.push(node);
}
int pop(){