这篇文章复习顺序栈,顺序栈就是对线性表进行限制,使之只能在队尾进行操作,也就是一种特殊的线性表,先入后出,后入先出。
代码实现如下,仅供君参考:
class arrStack
{
private:
vector<int> s;
int topCur;
int size;
public:
arrStack()
{
topCur = -1;
size = 0;
}
~arrStack()
{
s.clear();
}
bool push(int value);
bool pop();
bool isEmpty();
int top();
bool clear();
};
bool arrStack::clear()
{
size = 0;
topCur = -1;
s.clear();
return true;
}
bool arrStack::push(int value)
{
s.push_back(value);
topCur++;
size++;
return true;
}
bool arrStack::pop()
{
if (size > 0)
{
s.pop_back();
topCur--;
size--;
return true;
}
else
{
return false;
}
}
bool arrStack::isEmpty()
{
if (size == 0)
{
return true;
}
else
{
return false;
}
}
int arrStack::top()
{
if (size > 0)
{
return s[topCur];
}
else
{
return 0;
}
}