15算术表达式与二叉树

《数据结构与算法》课程设计任务书

题目: 算术表达式与二叉树

学生姓名: 学号: 班级:

题目类型:软件工程(R ) 指导教师:

一. 题目简介

一个表达式和一棵二叉树之间,存在着自然的对应关系。本设计要求学生编程实现基于二叉树表示的算术表达式的操作。通过该题目的设计过程,可以加深理解树及二叉树的逻辑结构、存储结构以及递归算法设计的基本原理,掌握树及二叉树上基本运算的实现。进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养学生的动手能力。

二. 主要任务

第一部分:基本算法实现

1、线性结构基本算法实现(指导老师根据题目指定);

2、树型结构基本算法实现(指导老师根据题目指定);

3、图型结构基本算法实现(指导老师根据题目指定);

4、查找基本算法实现(指导老师根据题目指定);

5、排序基本算法实现(指导老师根据题目指定);

第二部分:指定题目的设计与实现

1、查阅文献资料,一般在3篇以上;

2、建立数据的逻辑结构和物理结构;

3、完成相应算法的设计;

4、完成测试工作;

5、撰写设计说明书;

6、做好答辩工作。

三. 主要内容、功能及技术指标

假设算术表达式Expression 内可以含有变量(a ~z )、常量(0~9)和二元运算符(+,-,*,/,^(乘幂) )。实现以下操作:

(1)ReadExpre(E)—以字符序列的形式输入语法正确的前缀表达式并构造表达式E 。

(2)WriteExpre(E)—用带括弧的中缀表达式输出表达式E 。

(3)Assign(V,c)—实现对变量V 的赋值(V=c),变量的初值为0。

(4)Value(E)—对算术表达式E 求值。

(5)CompoundExpr (P ,E1,E2)--构造一个新的复合表达式(E1)P (E2)

(6)算法对于精心选择的典型、苛刻而带有刁难性的几组输入数据能够得出满足规格说明要求的结果;对算法实现过程中的异常情况能给出有效信息;

(7)较高要求:实现图形化操作界面。

四. 提交的成果

1. 设计说明书一份,内容包括:

1) 中文摘要100字;关键词3-5个;

2) 序言;

3)采用类c 语言定义相关的数据类型

4)各模块的伪码算法

5)函数的调用关系图

6)调试分析

a 、调试中遇到的问题及对问题的解决方法;

b 、算法的时间复杂度和空间复杂度。

7)测试结果

8)源程序(带注释)

9) 设计总结、参考文献、致谢等。

2. 刻制光盘一张。

五. 主要参考文献

1.严蔚敏,吴伟民. 《数据结构(C 语言版)》. 清华大学出版社.

2.严蔚敏,吴伟民. 《数据结构题集(C 语言版)》. 清华大学出版社. 3 .《DATA STRUCTURE WITH C++》. William Ford,William Topp .清华大学出版社(影印版).

4.谭浩强. 《c 语言程序设计》. 清华大学出版社.

5.数据结构与算法分析(Java 版) , A Practical Introduction to Data Structures and Algorithm Analysis Java Edition Clifford A. Shaffer , 张铭, 刘晓丹译 电子工业出版社 2001 年1月.

六.

各阶段时间安排(共2周)

2016年6月28日

《数据结构与算法》课程设计任务书

题目: 算术表达式与二叉树

学生姓名: 学号: 班级:

题目类型:软件工程(R ) 指导教师:

一. 题目简介

一个表达式和一棵二叉树之间,存在着自然的对应关系。本设计要求学生编程实现基于二叉树表示的算术表达式的操作。通过该题目的设计过程,可以加深理解树及二叉树的逻辑结构、存储结构以及递归算法设计的基本原理,掌握树及二叉树上基本运算的实现。进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养学生的动手能力。

二. 主要任务

第一部分:基本算法实现

1、线性结构基本算法实现(指导老师根据题目指定);

2、树型结构基本算法实现(指导老师根据题目指定);

3、图型结构基本算法实现(指导老师根据题目指定);

4、查找基本算法实现(指导老师根据题目指定);

5、排序基本算法实现(指导老师根据题目指定);

第二部分:指定题目的设计与实现

1、查阅文献资料,一般在3篇以上;

2、建立数据的逻辑结构和物理结构;

3、完成相应算法的设计;

4、完成测试工作;

5、撰写设计说明书;

6、做好答辩工作。

三. 主要内容、功能及技术指标

假设算术表达式Expression 内可以含有变量(a ~z )、常量(0~9)和二元运算符(+,-,*,/,^(乘幂) )。实现以下操作:

(1)ReadExpre(E)—以字符序列的形式输入语法正确的前缀表达式并构造表达式E 。

(2)WriteExpre(E)—用带括弧的中缀表达式输出表达式E 。

(3)Assign(V,c)—实现对变量V 的赋值(V=c),变量的初值为0。

(4)Value(E)—对算术表达式E 求值。

(5)CompoundExpr (P ,E1,E2)--构造一个新的复合表达式(E1)P (E2)

(6)算法对于精心选择的典型、苛刻而带有刁难性的几组输入数据能够得出满足规格说明要求的结果;对算法实现过程中的异常情况能给出有效信息;

(7)较高要求:实现图形化操作界面。

四. 提交的成果

1. 设计说明书一份,内容包括:

1) 中文摘要100字;关键词3-5个;

2) 序言;

3)采用类c 语言定义相关的数据类型

4)各模块的伪码算法

5)函数的调用关系图

6)调试分析

a 、调试中遇到的问题及对问题的解决方法;

b 、算法的时间复杂度和空间复杂度。

7)测试结果

8)源程序(带注释)

9) 设计总结、参考文献、致谢等。

2. 刻制光盘一张。

五. 主要参考文献

1.严蔚敏,吴伟民. 《数据结构(C 语言版)》. 清华大学出版社.

2.严蔚敏,吴伟民. 《数据结构题集(C 语言版)》. 清华大学出版社. 3 .《DATA STRUCTURE WITH C++》. William Ford,William Topp .清华大学出版社(影印版).

4.谭浩强. 《c 语言程序设计》. 清华大学出版社.

5.数据结构与算法分析(Java 版) , A Practical Introduction to Data Structures and Algorithm Analysis Java Edition Clifford A. Shaffer , 张铭, 刘晓丹译 电子工业出版社 2001 年1月.

六.

各阶段时间安排(共2周)

2016年6月28日


相关内容

  • 关于"准变量思维"的交流
  • 远山 发表于 2008-1-27 15:47:00 最近看一作者文中涉及"准变量思维",觉得较有意思,在交流中也多次和作者交流了"准变量思维",相信其过程对大家有些帮助. 现将部分交流内容整理如下: 1.涉及"准变量思维"的文章. 在算术思 ...

  • 算术表达式与二叉树
  • 目录 一.系统开发的背景 ................................................................................................................ 1 二.系统分析与设计 ............ ...

  • 基于二叉树的算术表达式计算与实现
  • 科技教育创新 Education DOI:10.3969/j.issn.1001-8972.2012.13.135 中国科技信息2012年第13期 CHINA SCIENCE AND TECHNOLOGY INFORMATION Jul.2012 基金项目:高职高专计算机类专业2012年度规划课题( ...

  • 合肥工业大学编译原理课程设计
  • 关于<编译原理>课程设计的有关说明 <编译原理>是计算机专业的一门重要的专业课程,其中包含大量软件设计思想.大家通过课程设计,实现一些重要的算法,或设计一个完整的编译程序模型,能够进一步加深理解和掌握所学知识,对提高自己的软件设计水平具有十分重要的意义.大家在进行课程设计时, ...

  • 第三节汇编程序输入和输出文件的格式
  • 第三节 汇编程序输入和输出文件的格式 一.源文件 源文件是由文字编缉器编写的由汇编指令和MASM51伪指令构成的文本文件.源文件一般应以.ASM为扩展名. 二.源文件的格式 以回车作为结束的一行称为语句行.每一语句行长度应少于80个字符(即40个汉字).每一个语句行对于汇编程序来说都是一条单独的命令 ...

  • 二次根式的乘法与除法
  • 二次根式的乘法与除法 一.学习要求 会用积的算术平方根,商的算术根的性质化简二次根式. 二.例题分析 第一阶梯 [例1]填空 提示: 1. 有意义的条件是什么? 2.同时满足两个条件的情况如何用数学语言表示? 3.不等式组的解如何确定? 参考答案: (1)x≥5 (2)-2≤x≤3 说明: 有意义的 ...

  • [交互网页设计]实训报告6
  • <交互网页设计> ·实验报告 6 实验项目:运算符和表达式(二) 学生姓名 学号 张梅红 班级 实验时间:2015 年 电商一班 成绩 批阅教师 月 日 [1**********]6 一.实验基础知识: 1.VB.Net 中主要有几种运算符?写出所有运算符的优先级 答:四种运算符:算术运 ...

  • 初二上学期知识点汇总
  • 初二第一学期知识点汇总 勾股定理 直角三角形两条直角边的平方和等于斜边的平方.如果直角三角形的两直角边长分别为斜边长为,那么. , 要点诠释:(1)勾股定理揭示了一个直角三角形三边之间的数量关系.(2)利用勾股定理,当设定一条直角边长为未知数后,根据题目已知的线段长可以建立方程求解,这样就将数与形有 ...

  • 算术平均数与几何平均数
  • [基础知识导引] 1.什么叫算术平均数?什么叫几何平均数? 2.均值定理的内容是什么?运用均值定理不定式要注意哪些条件? 3.均值定理有哪些应用? [重点难点解析] 1.本节利用不定式的性质,推导出两个基本而又重要的不等式:如果a. ,那么 (当且仅当a=b时取"="号):如果a ...