1 栈的概念
1.1 栈的定义
- 栈是一种特殊的线性表。
- 栈仅能在线性表的一端进行操作。
- 栈顶(Top):允许操作的一端。
- 栈底(Bottom):不允许操作的一端。
1.2 栈的特性
后进先出(Last In First Out)。

1.3 栈的操作
- 创建栈(Stack())
- 销毁栈(~Stack())
- 清空栈(clear())
- 进栈(push())
- 出栈(pop())
- 获取栈顶元素(top())
- 获取栈的大小(size())
2 栈的实现
2.1 继承关系图

2.2 类的实现

3 代码实现
Stack.h
#ifndef STACK_H
#define STACK_H
#include "Object.h"
namespace LemonLib {
template <typename T>
class Stack : public Object
{
public:
virtual void push(const T& e) = 0;
virtual void pop() = 0;
virtual T top() const = 0;
virtual void clear() = 0;
virtual int size() const = 0;
};
}
#endif // STACK_H
2092

被折叠的 条评论
为什么被折叠?



