数据结构 第6讲 链栈
进出的一端称为栈顶(top),另一端称为栈底(base)。栈可以用顺序存储,也可以用链式存储。顺序栈和链栈图解:

顺序栈是分配一段连续的空间,需要两个指针,base指向栈底,top指向栈顶。而链栈每个结点的地址是不连续的,只需要一个栈顶指针即可。
从上图可以看出,链栈的每个结点都包含两个域,数据域和指针域,是不是和单链表一模一样?那么我们就可以按单链表的定义。
链栈的结构体定义:

链栈的结点定义和单链表一样,只不过它只能在栈顶操作而已。
下面讲解链栈的初始化、入栈,出栈,取栈顶元素等操作(元素以int类型为例)。
1. 链栈初始化
初始化一个空栈,只需要让栈顶指针为空即可。
bool InitStack(LinkStack &S) {//构造一个空栈S
S=NULL;
&n

数据结构中的链栈是栈的一种实现方式,其结构与单链表类似,主要操作包括初始化、入栈、出栈和取栈顶元素。链栈不需要连续空间,只需栈顶指针。初始化时栈顶指针为空,入栈时创建新节点并更新栈顶指针,出栈时删除栈顶节点并调整栈顶指针,取栈顶元素则不改变栈顶指针。
订阅专栏 解锁全文

377

被折叠的 条评论
为什么被折叠?



