栈的基本操作(C语言)
一 . 栈的含义以及应用:
1、含义:栈(stack)是限定仅在表的一段进行插入删除操作的线性表。
2、数据进出顺序为:先进后出,和弹夹压入的子弹一样,先压进去的最后才能射出
3、应用场景:网页浏览时的后退 编辑软件中的“撤销”
二. 栈的存储结构的选择:
1、数组:选用数组来做栈的存储结构,只需要在数组末尾进行操作即可,完美的避开了数组操作中挪动数据的缺陷,显然可以选择数组来做栈的存储结构
2、单链表:因为栈是在线性表的一段进行操作,所以得想想实在链表头操作,还是在链表尾操作。
如果选用链表尾,那每次都得找到链表尾部,不方便(是可以设置尾指针,但是就多了一个尾指针得空间)
如果选用链表头,那每次只需要在链表头操作即可,操作更为方便。