对于栈的链式存储,其实咱们之前已经给大家分享过了,其实栈的链式存储和单链表(线性表的链式存储)是一样的,但是栈符合的特性是后进先出,所以需要考虑的是如何实现出栈和入栈。那么通过之前的学习,相信大家应该知道了,其实入栈和出栈就相当于单链表的头插法和头删法,这样实现的话就简单多了,具体代码如下。
插入操作和删除操作均在链表头部进行,链表尾部就是栈底,栈顶指针就是头指针。
(1)定义栈节点 linkstack_t
(2)创建一个空的栈 linkstack_create( )
(3)入栈 linkstack_push( )
(4)判断栈是否为空 linkstack_empty( )
(5)打印数据 linkstack_show( )
(6)出栈 linkstack_pop( )
(7)main( )
通过对比可以知道,其实数据结构的知识都是相通的,所以大家在学习数据结构的知识时,要将所学知识融会贯通。