栈:只允许在表尾进行插入和删除的线性表 后进先出(Last In First Out)LIFO结构
( 注意:线性表的存储方式分为顺序存储和链式存储)
操作方式:
1)进栈
栈的压入,也称压栈、入栈 push
2)出栈
栈的删除 pop
其中进栈出栈有多种变化方式:例如可以同时入栈123再出栈,也可以单个入再单个出例如入1出1再继续

栈的存储方式:
顺序存储
缺点:需要事前确定数组的存储空间
空栈的判断条件:top=-1

进栈操作:

出栈操作:

两栈共享存储空间
适用情况:例如一栈增长另一栈缩短
分为top1和top2
栈为空的判断条件:栈1为空时top1=-1;栈2为空时top2=n
栈满情况:top1+1=top2


进栈操作:


出栈操作:

栈的链式存储结构
不需要头结点
适用于栈的空间大小不可预料情况
链栈为空的判断条件是top=NULL

进栈操作
注意大写S和小写s S为指向链栈指针的结构 s为链表结点


出栈操作

参考:大话数据结构

本文深入讲解了栈数据结构,包括其基本概念、操作方式、存储方式等。详细介绍了栈的两种存储方式:顺序存储和链式存储,以及它们各自的优缺点。此外,还探讨了两栈共享存储空间的情况及其实现细节。
2万+

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



