Skip to content

栈的链式存储结构


采用链式存储的栈称为链栈,链栈的优点是便于多个栈共享存储空间和提高其效率,且不存在栈满上溢的情况。通常采用单链表实现链栈,并规定所有操作都是在单链表的表头进行的。这里规定链栈没有头结点,Lhead 指向栈顶元素,如图所示。


链栈

栈的链式存储类型可描述为:

c
typedef struct Linknode{
    ElemType data; //数据域
    struct Linknode *next; //指针域
}LiStack; //栈类型定义

采用链式存储,便于结点的插入与删除。链栈的操作与链表类似,入栈和出栈的操作都在链表的表头进行。需要注意的是,对于带头结点和不带头结点的链栈,具体的实现会有所不同。

Last updated:

本站源代码可在 Github 查看与贡献。