开发工具与关键技术:堆栈
作者:章明
撰写时间:2020/4/25
堆栈的定义:堆栈简称为栈,是限定在表的一端进行插入和删除操作的线性表。在表中允许插入和删除的一端称为栈顶,另一端称为栈底。通常将元素插入栈顶的操作称为“入栈”(进栈或压栈)称删除栈顶的元素的操作为“出栈”。如图所示为栈的“进栈”与“出栈”
堆栈的特征是后进先出。它的这一特征就好似我们生活中的碟盘子。(如上图所示)堆栈的压入事就好似一层一层的往上碟。而弹出则与之相反,一层一层的从上往下的拆除。这样你是不是发现最底层的盘子是最先“压”上去的但却是最后“弹”出来的。这就是先进后出,反之就是后进先出了。
堆栈是一种特殊的线性表,因为它满足线性的元素与元素之间的逻辑关系一一对应。且值得注意的是栈它只可以一端进行元素的插入与删除。就如上图所示如果元素是从上面进行插入(入栈)的则必须是从上面删除(出栈)。
如上图是堆栈的基本运算。
顺序栈的储存结构:
解析:当一个栈为空时top的指向的实际元素的前一个。假如说一个栈的容量是四时当栈为空时栈的实际元素是零,所以栈空时top为负一。