文章目录
本篇将讲述栈的相关知识
在之前的文章中我们学习了线性表,大家一定要掌握线性表的相关知识,这是后面内容的基础。
栈的定义
先来看看栈的定义:
栈是限定仅在表尾进行插入和删除操作的线性表。表尾一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈;从一个栈删除元素又称作出栈或退栈。
由定义可以得知,栈本质就是一个线性表,只不过栈只能在表尾进行插入和删除操作,是操作受限的线性表。
因为只能在表尾进行插入和删除,所以栈中的元素是先进后出的,也就是说,最先进栈的元素最后才出栈。
可以将栈的结构类比成子弹夹,最先压入的子弹在最底下。
下图为元素的进栈过程:
下图为元素的出栈过程:
对于入栈和出栈的理解一定要透彻,比如