- 1
- 0
- 约7.42千字
- 约 26页
- 2018-01-28 发布于浙江
- 举报
第03章 栈和队列 数据结构 (第二版) 教学课件
第三章 栈和队列 3.1 栈的表示和实现 一、栈的概念 栈(stack)是插入和删除操作限定在表尾进行的线性表。 栈的逻辑表示为:S =(a1,a2, …,an) 表尾元素an称为栈顶(top) 表头元素a1称为栈底(bottom) 不含元素的空表称为空栈 栈的运算特性是后进先出(Last In First Out--LIFO) 或先进后出(First In Last Out--FILO) 3.1 栈的表示和实现 二、栈的基本运算 INISTACK(S) 初始化操作,设定一个空栈S EMPTY(S) 判栈S是否为空函数(true/false) PUSH(S, x) 入栈操作,在栈S顶部插入元素x, 相当于线性表的INSERT(L, n+1, x) POP(S) 出栈函数,若S不空,则返回栈顶元素, 并删除栈顶元素;否则返回空元素NULL, 相当于线性表的DELET(L, n) GETTOP(S) 取栈顶元素函数, 与POP(S)的差别在不删除栈顶元素, 相当于线性表的GET(L, n) CURRENT-SIZE(S) 求S栈中当前元素个数函数, 相当于线性表的LENGTH(L) CLEAR(S) 置栈空操作 3.1 栈的表示和实现 三. 栈的表示和实现 1. 顺序栈的存储结构描述及出入栈运算 CONST arrmax = 栈允许存放元素个数的最大值; TYPE sqstktp = RECORD elem:ARRAY[1..arrmax] OF elemtp; top:0..arrmax END; S = sqstktp; S.elem[i]表示第i个进栈的元素 S.elem[S.top] 表示栈顶元素 当S.top = 0 表示空栈 当S.top = arrmax 表示栈满 3.1 栈的表示和实现 入栈函数push(S,x)的实现 算法思想:若栈满返回false;否则将x入栈,并返回true。 FUNC push_stack (VAR s:sqstktp;x:elemtp):boolean; IF s.top = armax THEN RETURN(false) ELSE [s.top:=s.top+1; s.elem[s.top]:= x; RETURN(true)] ENDF;{push_stack } 3.1 栈的表示和实现 出栈函数pop(S)的实现 算法思想:若栈空则返回空元素NULL; 否则返回栈顶元素。 FUNC pop_stack (VAR s:sqstktp):elemtp; IF s.top = 0 THEN RETURN(NULL) ELSE [ s.top:=s.top -1; RETURN( s.elem[s.top +1] ) ] ENDF;{pop_stack } 3.1 栈的表示和实现 2. 链栈的存储结构描述 TYPE pointer =↑nodetype; nodetype = RECORD data:elemtp; next:pointer END; linkstktp = pointer; 3.2 递归过程 递归是栈的另一个重要应用,也是程序设计的一个强有力的工具。 1. 应用递归的原因和领域 递归定义 ┏
您可能关注的文档
- 第 8 章 放大电路 电工电子技术与技能教学课件.ppt
- 第 8 章 数字信号的最佳接收 通信原理教学课件.ppt
- 第 9 章 利用图层技术制作网页.ppt
- 第 9 章 不可压缩流体的平面势流 气体动力学 教学课件.ppt
- 第 9 章 电磁波辐射 电磁场与电磁波教案 教学课件.ppt
- 第 七 讲 房地产项目开发的实务基础 —基础认识与实务要义 房地产企业经营管理 教学课件.ppt
- 第 9章 直流稳压电源 电工电子技术与技能教学课件.ppt
- 第 二节 求解多属性决策问题的准备工作.ppt
- 第 二 章 Internet分层体系结构 TCPIP协议 选修课.ppt
- 第 十 一 章 生殖 生理学 教学课件.ppt
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
原创力文档

文档评论(0)