数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。
前言
栈也是一种特殊的线性表,它遵循着“先进后出”的存储规则,与队列十分相似。本文介绍栈的基础内容。
1. 栈介绍
1.1 什么是栈
栈(stack)是一种遵循“先进后出”的存储方式。
如同这个示意图,数据入栈时都是压入栈区数据的尾端,出栈时也是从栈尾开始依次出栈。就像是一罐薯片,一片一片往里放时(入栈)总时放在上一片的后面,往外拿时(出栈)都是先拿离罐口最近的一片。
栈对存入其内部的数据没有具体要求,可以根据自己的需求构造相应的栈。
本文构造的栈内元素类型相同
1.2 栈的性质
-
新元素压入栈顶
-
栈顶元素先离开栈
1.3 栈的构成
- 栈顶元素的位置
- 栈的容量
- 数据的存储空间
1.4 队列的框架代码(C++版)
#include <iostream>
#include<iostream>
using namespace std;
//
template <typename Type> class Stack {
private:
Type *data;
int size, top;