ps:上午事太多了,来的有点晚
用vector模拟即可,要前插用insert,后插用push,前删用erase,后删用pop
class MyCircularDeque {
public:
int l=0,r=0,xz;
vector<int> vec;
MyCircularDeque(int k) {
xz=k;
}
bool insertFront(int value) {
if(vec.size()<xz)
{
vec.insert(vec.begin(),value);
return true;
}
else
return false;
}
bool insertLast(int value) {
if(vec.size()<xz)
{
vec.push_back(value);
return true;
}
else
return false;
}
bool deleteFront() {
if(!vec.empty())
{
vec.erase(vec.begin());
return true;
}
else
return false;
}
bool deleteLast() {
if(!vec.empty())
{
vec.pop_back();
return true;
}
else
return false;
}
int getFront() {
if(!vec.empty())
{
return vec[0];
}
else
return -1;
}
int getRear() {
if(!vec.empty())
{
return vec[vec.size()-1];
}
else
return -1;
}
bool isEmpty() {
if(!vec.empty())
{
return false;
}
else
return true;
}
bool isFull() {
if(vec.size()==xz)
{
return true;
}
else
return false;
}
};