24李后浪课程设计报告书.docVIP

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
24李后浪课程设计报告书

编 号: 学 号: 201240420224 课 程 设 计 教 学 院 计算机学院 课程名称 数据结构与算法课程设计 题 目 算术表达式求值 专 业 网络工程 班 级 2012级网络工程2班 姓 名 李后浪 同组人员 梅锟、刘小虎、丁兵武 指导教师 邓丹君 2013 年 12 月 28 日 课程设计任务书 2013 ~2014 学年第 1 学期 学生姓名: 李后浪 专业班级: 网络工程(2)班 指导教师: 邓丹君 工作部门: 计算机学院 一、课程设计题目 算术表达式求值 二、课程设计内容 输入一个算术表达式,其中操作数必须为实数,运算符包括加、减、乘、除、小(圆)括号,试编写程序实现: (1)生成表达式二叉树; (2)根据表达式二叉树求表达式的值; (3)先序遍历表达式二叉树;根据先序遍历序列(波兰式)求表达式的值; (4)中序遍历表达式二叉树,要求恢复必要的括号; (5)后序遍历表达式二叉树,根据后序遍历序列(逆波兰式)求表达式的值; 三、进度安排 1. 系统设计,确定函数功能及其实现过程; 2. 根据前面的结果,编写程序清单,进行调试; 3. 经过反复的编译,调试,测试,程序运行成功; 4. 撰写课程设计报告,完成整个论文报告的工作,并打印;课题答辩。 四、基本要求 1.界面友好,函数功能要划分好 2.总体设计应画一流程图 3.程序要加必要的注释 4.要提供程序测试方案 5.程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的 目 录 目 录 2 一 概述 3 二 总体方案设计 4 三 详细设计 5 四 程序的调试与运行结果说明 5 五 课程设计总结 30 参考文献 32 一 概述 课程设计的目的 1.理解和掌握该课程中的有关基本概念,程序设计思想和方法。 2.培养综合运用所学知识独立完成课题的能力。 3.培养勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。 4.掌握从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。 课程设计的要求 1)需要的基本知识与技能: 入栈、出栈操作; 二叉树的先序、中序、后序遍历; 根据表达式求值; 2)尚未掌握的知识点,需要查阅相关资料: (1)根据中缀表达式构造树; (2)根据算术表达式生成表达式二叉树; (3)根据波兰式求表达式的值; (4)根据逆波兰式求表达式的值; 5)教师对本题目所提出的要求等。 (1).界面友好,函数功能要划分好; (2).总体设计应画一流程图; (3).程序要加必要的注释; (4).要提供程序测试方案; (5).程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 3.课程设计的内容 输入一个算术表达式,其中操作数必须为实数,运算符包括加、减、乘、除、小(圆)括号,试编写程序实现: (1)生成表达式二叉树; (2)根据表达式二叉树求表达式的值; (3)先序遍历表达式二叉树;根据先序遍历序列(波兰式)求表达式的值; (4)中序遍历表达式二叉树,要求恢复必要的括号; (5)后序遍历表达式二叉树,根据后序遍历序列(逆波兰式)求表达式的值; 二 总体方案设计 (本次设计在具体设计过程中的整体设计思路,算法的整体思路、主要特点,具备功能。你所承担部分的设计工作,主要解决的关键性问题) 1.整体设计思路: (1)输入一个算术表达式生成一颗二叉树; (2)根据这个表达式二叉树求表达式的值; (3)先序遍历表达式二叉树;根据先序遍历序列(波兰式)求表达式的值; (4)中序遍历表达式二叉树,要求恢复必要的括号; (5)后序遍历表达式二叉树,根据后序遍历序列(逆波兰式)求表达式的值。 2.算法的整体思路: 实现栈与树的结合,将字符入栈,设置两个栈,一个栈装操作数,一个装操作符。装操作树的栈设置一个函数判断操作符的优先级。设置结点类,结点类是操作符,且具有结点的左子树也是操作符,比较操作符的优先级再进行算术运算,求表达式的值。 3.主要特点: 栈与树结合,程序里包括结点、树类、栈。 4.具备功能: (1)程序能够生成一颗表达式二叉树; (2)根据这个表达式二叉树求表达式的值。 (3)先序遍历表达式二叉树;根据先序遍历序列(波兰式)求表达式的值; (4)中序遍历表达式二叉树,要求恢复必

文档评论(0)

100101 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档