数据结构笔记——栈

目录

一、栈的定义

二、栈的基本操作

三,栈的常考题型

四、总结


一、栈的定义

栈是只允许在一端进行插入或删除操作的线性表

重要术语:栈顶、栈底、空栈

数据结构笔记——栈

数据结构笔记——栈

进栈顺序:a1->a2->a3->a4->a5

出栈顺序:a5->a4->a3->a2->a1

特点:后进先出

Last In First Out(LIFO)

 

二、栈的基本操作

InitStack(&S):初始化栈。构造一个空栈S,分配内存空间

DestroyStack(&L):销毁栈。销毁并释放栈S所占用的内存空间

Push(&S,x):进栈,若栈S未满,则将x加入使之成为新栈顶

Pop(&S,&x):出栈,若栈S非空,则弹出栈顶元素,并用x返回。

GetTop(S,&x):读栈顶元素。若栈S非空,则用x返回栈顶元素。

其他常用操作:

StackEmpty(S):判断一个栈S是否为空。若S为空,则返回true,否则返回false.。

 

三,栈的常考题型

进栈顺序:

a-b-c-d-e,有哪些合法的出栈顺序?

e-d-c-b-a、b-e-d-c-a等等

 

四、总结

数据结构笔记——栈