基于ArraY此数组实现的——

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include<iostream>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include"ArraY.h"
using namespace std;

template<typename T>
class ArrayStack{

private:
Array<T> *arr;
public:

ArrayStack(int Capacity){
arr=new Array<T>[Capacity];
}

ArrayStack(){
arr=new Array<T>();
}

//入栈
void push(T e){
arr->addLast(e);
}

//出栈,返回弹出的元素T
T pop(){
return arr->remove(arr->getSize()-1);
}

//判断栈是否为空
bool isEmpty(){
return arr->isEmpty();
}

//查看栈顶元素
T peek(){
return arr->get(arr->getSize()-1);
}

//获得栈中的元素个数
int getSize(){
return arr->getSize();
}

~ArrayStack(){
delete []arr;
arr= nullptr;
}
};