我们把允许插入和删除的一段称之为栈顶,另一端称之为栈底,不含任何元素的栈称之为空栈,栈又称为后进先出的线性表,简称LIFO结构。
栈的插入操作叫做进栈、入栈、压栈。
栈的删除操作叫做出栈、弹栈。
进出栈的变化形式,在栈中元素还没有全部放进来之前,栈中的栈顶元素是可以出栈的。如图事例
在学习线性表的时候,知道线性表拥有2种结构顺序存储结构与链式存储结构。栈的顺序存储结构我们称之为顺序栈。
顺序栈的存储结构,先放进栈中的元素为栈底元素、后放进去的元素为栈顶元素。
只允许栈顶进出元素的设计还是很方便操作的,但是顺序栈存在一个缺陷,就是在使用栈前,我们要分配适当大小的栈空间,如果在运行过程中,一旦超出了栈大小,就会出现溢出现象。
栈的链式存储结构我们简称为链栈。如图
相比顺序栈,链栈不应该存在溢出的现象,除非内存空间不够了,那这样计算机也会一同崩掉。
原文:http://blog.csdn.net/gaopeng0071/article/details/24485363