堆栈的定义
堆栈又简称为“栈”,英文名为“Stack”。
堆栈满足了线性表的元素与元素之间的逻辑关系,并且一一对应,所以堆栈是一种特殊的线性表。
堆栈这种线性表最特殊的是只能限定在表的同一端进行插入和删除的,就是我们称为“栈顶”的这一端,堆栈的这个特征又可以简称为“后进先出”。
堆栈的这个“后进先出”就像我们平时叠东西一样,从最下面叠起,但是从最上面开始拿走。
堆栈有两种存储结构,一种称为顺序栈,另一种称为链栈。
如下图的堆栈是存放在一个一直连续的顺序表中,它的栈顶是an,栈底是a1。而堆栈堆栈这种线性表的插入又可以称为“入栈”、“进栈”、“压栈”或者“压入”, 它的删除又可以称为“出栈”和“弹出”。