栈的基本操作(C语言)

一 . 栈的含义以及应用:

1、含义:栈(stack)是限定仅在表的一段进行插入删除操作的线性表。

2、数据进出顺序为:先进后出,和弹夹压入的子弹一样,先压进去的最后才能射出

3、应用场景:网页浏览时的后退 编辑软件中的“撤销”

二. 栈的存储结构的选择:

1、数组:选用数组来做栈的存储结构,只需要在数组末尾进行操作即可,完美的避开了数组操作中挪动数据的缺陷,显然可以选择数组来做栈的存储结构

2、单链表:因为栈是在线性表的一段进行操作,所以得想想实在链表头操作,还是在链表尾操作。

如果选用链表尾,那每次都得找到链表尾部,不方便(是可以设置尾指针,但是就多了一个尾指针得空间)

如果选用链表头,那每次只需要在链表头操作即可,操作更为方便。