#include<iostream>
#include<vector>
#include<stack>
#include<queue>
#include<deque>
#include<algorithm>
using namespace std;
namespace bit
{
#include<deque>
template<class T, class Con = deque<T>>
class stack
{
public:
stack();
void push(const T& x){
_c.push_back(x);
}
void pop(){
_c.pop_back();
}
T& top(){
return _c.back();
}
const T& top()const{
return _c.back();
}
size_t size()const{
return _c.size();
}
bool empty()const{
return _c.empty();
}
private:
Con _c;
};
template<class T, class Con = deque<T>>
class queue
{
public:
queue();
void push(const T& x){
_c.push_front(x);
}
void pop(){
_c.pop_front();
}
T& back(){
return _c.back();
}
const T& back()const{
return _c.back();
}
T& front(){
return _c.front();
}
const T& front()const{
return _c.front();
}
size_t size()const{
return _c.size();
}
bool empty()const{
return _c.empty();
}
private:
Con _c;
};
};
C++栈和队列之(deque)模拟实现
最新推荐文章于 2023-05-17 11:07:28 发布