栈(Stack)
栈的基本概念
栈是一种 先进后出(First in Last Out, FILO) 的数据结构,其类似于我们生活中的衣娄,衣服只能从最顶部放入,也只能从最顶部拿出,要想拿出中间的某件衣服,就需要将顶部的衣服全部拿出,再进行后续的操作。
衣娄对应到栈上,就是以下的概念:
- 栈(Stack) 是一种类似于衣娄的数据结构,我们可以向其内部存入或者取出数据
- 栈按照 先进后出 的原则存储数据,每次新进入的数据都会被放在最上面,越先进入的越靠下,越后进入的数据越靠上。
- 我们只能对最上面的数据进行操作
- 栈的两大元素:栈的大小和栈顶指针Top(该指针指向栈最顶部的位置)
栈的基本操作
- 新建栈(题目简单时可以用数组模拟栈)
- 插入数据
- 删除栈顶数据
- 查询栈顶数据
- 清空栈