数据结构:第三章栈和队列

数据结构:第三章栈和队列

3.1栈

栈中允许插入和删除的一端为栈顶(top),另一段为栈底botton
遵循后进先出的原则

栈的抽象数据类型描述
clear置空
isEmpty判栈空
peek取栈
push入栈
pop出栈

顺序栈及其基本操作的实现
top为0时为空
top==stackElem.length
栈的长度top

链栈中插入一个p
p.next=top, top=p
出栈top=top.next

栈的应用:
函数的递归调用中的地址,参数值的保存,文本编辑器中的undo序列的保存,网页访问记录的保存。

3.2队列

队列也是一种线性表,在表头删除数据,表尾插入数据。
队首为font,队尾为rear
遵循先进先出的原则。

队列的抽象数据类型描述
clear置空
isEmpty判栈空
length队长
peek取队首
offer入队
poll出队

顺序队列的存储结构
front=rear=0
解决假溢出现象,rear=(rear+1)%maxSize
循环队列的描述
front=(rear+1)%maxSize队满
front=rear队空
(rear-font+maxSize)%maxSize

出队font=(font+1)%maxSize

猜你喜欢

转载自blog.csdn.net/a1424261303/article/details/112154089
今日推荐