栈
1. 理解
栈是一个只能从尾部进行插入和删除数据操作的线性表,存储方式通常使用顺序存储,很少使用链式存储
2. 栈的顺序存储
1. 结构体代码
typedef struct stack
{
ElemType *top;
ElemType *base;
ElemType stackSize
} sqStack;
3. 栈的链式存储
1. 结构体代码
/**
* @brief 栈的链式存储结构
*
*/
typedef struct stackNode
{
ElemType data;
struct stackNode *next;
struct stackNode *prior;
} stackNode, *LinkStackPtr;
typedef struct LinkStack
{
LinkStackPtr top; // top 指针
ElemType *base; // base 指针
int count; // 栈元素的计数器
} LinkStack;
拓展
- 逆波兰表达式(RPN)