下载此文档

chapter 3栈与队列.ppt


文档分类:IT计算机 | 页数:约116页 举报非法文档有奖
1/116
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/116 下载此文档
文档列表 文档介绍
3 栈与队列
主要内容

栈的应用
队列
队列的应用
2
栈与队列
栈与队列
栈和队列是在程序设计中被广泛使用的两种线性数据结构。
与线性表相比,它们的插入和删除操作受更多的约束和限定,故又称为限定性的线性表结构。
3
栈与队列

栈:限定仅只能在末端进行插入和删除的线性表。
栈顶:允许插入和删除的一端。
栈底:不允许插入和删除的一端。
时间有序表:先进后出(FILO) /后进先出(LIFO)
an-1
an-2

a1
a0
bottom
top
退栈
(弹出)
进栈
(压入)
4
栈与队列
栈的基本操作
● clear()——清空栈。
● isEmpty()——判断栈是否为空。
● push(el)——将元素el放到栈的顶部。
● pop()——取出栈顶部的元素。
● topEl()——获取栈顶部的元素,但不删除该元素。
5
栈与队列
top=0
1
2
3
4
5
0
栈空
栈顶指针top,指向实际栈顶
后的空位置,初值为0
top
1
2
3
4
5
0
进栈
A
top
出栈
栈满
B
C
D
E
F
设数组大小为M
top=0,栈空,此时出栈,则下溢(underflow)
top=M,栈满,此时入栈,则上溢(overflow)
top
top
top
top
top
1
2
3
4
5
0
A
B
C
D
E
F
top
top
top
top
top
top
栈空
6
栈与队列
栈的表示和实现
顺序方式
链式方式
7
栈与队列
顺序表示的栈的实现
top
空栈: top == -1
MaxTop = = 4
top
A
top
A
B
A
B
C
top
top
A
B
C
D
3
1
2
0
8
栈与队列
栈的初始化操作
0 1 2 MaxTop-1
top
template<class T>
Stack<T>::Stack(int MaxStackSize){
MaxTop=MaxStackSize-1;
stack=new T[MaxStackSize];
top=-1;
}
9
栈与队列
进栈操作
0 1 2 maxSize-1
top
b
a
0 1 2 maxSize-1
top
b
a
c
template<class T>
Stack<T>& Stack<T>::Add(const T& x){
if(IsFull())
{cout<<"no memory;"<<endl;return *this;}
top=top+1;
stack[top]=x;
return *this;
}
10
栈与队列

chapter 3栈与队列 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数116
  • 收藏数0 收藏
  • 顶次数0
  • 上传人iris028
  • 文件大小1.21 MB
  • 时间2018-06-22