cmyqueue.cpp
来自「实现 stack或queue 的基本 ; 用 stack来实现 queue或」· C++ 代码 · 共 79 行
CPP
79 行
#include<iostream>
#include "my stack.h"
using namespace std;
template <typename T>
class Cqueue
{
private:
CMyStack<T> s1;
CMyStack<T> s2;
public:
Cqueue(){};
~Cqueue(){};
void Push(T const& );
T& Pop();
bool Isempty();
void Empty();
};
template <typename T>
void Cqueue<T>::Empty()
{
s1.Empty();
s2.Empty();
}
template <typename T>
bool Cqueue<T>:: Isempty()
{
if (s1.IsEmpty()) return true;
else return false;
}
template <typename T>
void Cqueue<T>::Push(T const& elem)
{
s1.Push(elem);
}
template <typename T>
T& Cqueue<T>::Pop()
{
if (s1.IsEmpty())
exit(0);
while (!s1.IsEmpty())
{
s2.Push(s1.Pop());
}
T&x=s2.Pop();
while (!s2.IsEmpty())
{
s1.Push(s2.Pop());
}
return x;
}
void main()
{
Cqueue<int> Q;
int n,i;
cout<<"要输入的个数:";
cin>>i;
for (int t=0;t<i;t++)
{
cin>>n;
Q.Push(n);
}
for(int j=0;j<10;j++){
cout<<Q.Pop()<<" ";
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?