数据结构之栈-c语言实现

文章来源:http://blog.seclibs.com/数据结构之栈-c语言实现/

在上一篇文章中说过,栈在实现上分为顺序栈和链式栈两种。

顺序栈: 用数组实现的栈

链式栈: 用链表实现的栈

因为栈就是一种“功能受限”的顺序表,所以在实现的时候,在之前数组和链表的基础上进行修改即可达到效果。

顺序栈

在实现顺序栈的时候,为了更好的表示栈顶元素top,我将之前数组中的使用个数used替换为top,在其他方面并没有太大的变化。

需要下载代码请移步至文末。

链式栈

链式栈在原先链表的基础上省去了不少内容,像按位置插入,删除指定内容等,这些都是由于栈的特性决定了只能从一端进行插入和删除,也正是因为如此,所以在单链表的基础上进行修改的,使用双链表没有太大的意义。

需要下载代码请移步至文末。

代码:

顺序栈:GitHub

链式栈:GitHub

文章首发公众号和个人博客

公众号:无心的梦呓(wuxinmengyi)

博客:http://blog.seclibs.com/

安全库:http://www.seclibs.com/

原文地址:https://www.cnblogs.com/wuxinmengyi/p/12245875.html