数据结构笔记
这篇文章主要是给出栈的基本操作的代码(如: POP、PUSH等),是一个最基本的栈的模板类。
#include <iostream>
#include <cassert>
#include "stack.h"
using namespace std;
const int stackIncreament = 20; //栈溢出时扩展空间的增量
template<class T>
class SeqStack :public Stack<T> {
public:
SeqStack(int sz = 50); //建立一个空栈
~SeqStack(); //析构函数
void Push(const T & x); //如果IsFull则溢出处理,否则把x推入栈顶
bool Pop(T & x); //如果IsEmpty则不执行,返回false,否则推掉栈顶元素并返回true
//推出元素值通过引用参数x返回
bool getTop(T & x)const; //如果栈为NULL则返回false,否则返回true,栈顶元素的值通过x传回
bool IsEmpty()const; //如果栈中元素等于0个返回true,否则返回false
bool IsFull()const; //如果栈中元素等于maxSize,返回true,否则返回false
int getSize()