算法设计与分析试验参考指导书.doc
《算法设计与分析试验参考指导书.doc》由会员分享,可在线阅读,更多相关《算法设计与分析试验参考指导书.doc(21页珍藏版)》请在咨信网上搜索。
1、算法设计和分析实 验 指 导 书东北大学软件学院目 录算法设计和分析1实 验 指 导 书1前 言3试验要求4试验1 分治法应用(2课时)51.试验目标52.试验类型53.预习要求54.试验基础要求55.试验基础步骤7试验2动态计划(2课时)91.试验目标92.试验类型93.预习要求94.试验基础要求95.试验基础步骤10试验3 回溯法(4课时)121.试验目标122.试验类型123.预习要求124.试验基础要求125.试验基础步骤13前 言算法设计和分析是一门面向设计,处于计算机科学和技术学科关键地位教育课程。经过对计算机算法系统学习,使学生了解和掌握计算机算法通用设计方法,培养对算法计算复杂
2、性正确分析能力,为独立设计算法和对算法进行复杂性分析奠定基础。要求掌握算法复杂度分析、分治法、动态计划法、贪心法、回溯法、分支限界法等算法设计方法及其分析方法。能将这些方法灵活应用到对应问题中,而且能够用C+实现所包含算法,并尽可能做到低复杂度,高效率。经过本课程试验,使学生加深对课程内容了解,培养学生严密思维能力,利用所学知识结合具体问题设计适用算法能力;培养学生良好设计风格,激励学生发明新算法和改善旧算法愿望和热情。期望同学们能够充足利用试验条件,认真完成试验,从试验中得到应有锻炼和培养。期望同学们在使用本试验指导书及进行试验过程中,能够帮助我们不停地发觉问题,并提出提议,使算法设计和分析
3、课程成为对大家有益课程。试验要求算法设计和分析课程试验目标是为了使学生在课堂学习同时,经过一系列试验,使学生加深了解和愈加好地掌握算法设计和分析课程教学纲领要求内容。在算法设计和分析课程试验过程中,要求学生做到:(1)仔细观察调试程序过程中出现多种问题,统计关键问题,做出必需说明和分析。(2)认真书写试验汇报。试验汇报模板见附录1。(3)遵守机房纪律,服从教导老师指挥,珍惜试验设备。(4)试验课程不迟到。如有事不能出席,所缺试验通常不补。(5)本试验采取开发环境为 Microsoft Visual C+ 6.0,同学在做试验之前要求熟悉该软件使用方法。(6)试验成绩关键从以下几方面考评:试验过
4、程态度,试验结果及汇报书写。试验1 分治法应用(2课时)1.试验目标(1) 了解分治法思想。(2) 掌握用分治法处理问题2.试验类型设计型3.预习要求熟悉Visual C+ 6.0上机编程调试基础方法。掌握教材上分治法思想,掌握多种排序方法及二分搜索思想。4.试验基础要求(1) 仔细阅读备选试验题目,选择一个(可选多个)作为此次试验题目,设计程序要满足正确性,代码中相关键注释,书写格式清楚,简练易懂,效率较高,利用C模板,设计程序通用性好,适合多种合理输入,并能对不合理输入做出正确提醒。(2) 可供选择题目有以下3个:(i) 中位数问题 问题描述设X 0 : n - 1和Y 0 : n 1 为
5、两个数组,每个数组中含有n个已排好序数。找出X和Y2n个数中位数。 编程任务 利用分治策略试设计一个O (log n)时间算法求出这2n个数中位数。 数据输入由文件input.txt提供输入数据。文件第1行中有1个正整数n(n=200),表示每个数组有n个数。接下来两行分别是X,Y数组元素。 结果输出 程序运行结束时,将计算出中位数输出到文件output.txt中。输入文件示例输出文件示例input.txtoutput.txt35 15 183 14 2114 实现提醒 比较两个序列中位数大小,假如两个数相等,则该数为整个2n个数据中位数,不然经过比较,分别降低两个序列查找范围,确定查找起止位
6、置,继续查找。(ii) Gray码问题 问题描述Gray码是一个长度为2n序列。序列中无相同元素,每个元素全部是长度为n位串,相邻元素恰好只有一位不一样。用分治策略设计一个算法对任意n结构对应Gray码。 编程任务 利用分治策略试设计一个算法对任意n结构对应Gray码。 数据输入由文件input.txt提供输入数据n。 结果输出 程序运行结束时,将得到全部编码输出到文件output.txt中。输入文件示例输出文件示例input.txtoutput.txt3000100101010011111101001 实现提醒 把原问题分解为两个子问题,分别对两个子问题每个数组后一位加0和1。(iii)归并
7、排序 问题描述现在网上拍卖系统会显示很多待拍卖物品,通常这些系统含有根据某个关键字对打出广告进行排序列出功效,而且能够根据用户输入某个关键字进行过虑,找到一些特定物品。 编程任务 定义一个Advertisement类,该类中最少包含该物品数量,名称,联络人e-mail,最好有开拍时间及关闭时间,依据用户输入关键字比如名称,mail,时间等,利用非递归归并排序对全部广告进行排序,并列出全部排好序广告。 数据输入由文件input.txt提供输入全部广告信息。程序中由用户输入要排序关键字。 结果输出 程序运行结束时,排好序广告输出到文件output.txt中,并为每个广告添加序号。输入文件示例输出文
8、件示例input.txtoutput.txtCoat(物品名称)3(数量)Skirt5Cap7Bag12Title(用户输入根据title排序)1Bag122Cap73Coat(物品名称)3(数量)4Skirt5 (3) 根据指定格式书写试验汇报,试验汇报清楚,但不赘述,字体最大为四号。在试验结束一周内上交试验汇报。5.试验基础步骤(1) 选定试验题目,仔细阅读试验要求,设计好输入输出,根据分治法思想构思算法,选择适宜存放结构实现应用操作。(2) 设计结果应在Visual C+ 试验环境下实现并进行调试。(3) 试验要有具体测试统计,包含多种可能测试数据。实 验 报 告课程名称:算法设计和分析
9、班级:软件1304 试验成绩:试验名称:分治策略学号:4726批阅老师签字:试验编号:试验一姓名:赵航试验日期: 1月 1 日指导老师:张莉组号:试验时间: 时 分 时 分一、试验目标了解分治法思想。掌握用分治法处理问题二、试验内容(i) 中位数问题 问题描述设X 0 : n - 1和Y 0 : n 1 为两个数组,每个数组中含有n个已排好序数。找出X和Y2n个数中位数。 编程任务 利用分治策略试设计一个O (log n)时间算法求出这2n个数中位数。 数据输入由文件input.txt提供输入数据。文件第1行中有1个正整数n(n=200),表示每个数组有n个数。接下来两行分别是X,Y数组元素。
10、三、试验环境WINDOWS7家庭版DEVC+四、问题分析(1) 分析要处理问题,给出你思绪,能够借助图表等辅助表示。设两个长度为n数列分别为x 0 : n -1和y 0 : n -1,分别找出这两个数列中位数xi和y j ,二者进行比较,依据比较结果能够在每个数列中降低二分之一搜索范围,然后再分别取两个子数列中位数再比较,再降低搜索范围,继续下去直到找到最终结果(2) 分析利用你想法处理该问题可能会有怎样时空复杂度。O(n)(3) 其它(你认为需要在此说明)五、问题处理(1) 依据对问题分析,写出处理措施。设两个长度为n数列分别为x 0 : n -1和y 0 : n -1,分别找出这两个数列中
11、位数xi和y j ,二者进行比较,依据比较结果能够在每个数列中降低二分之一搜索范围,然后再分别取两个子数列中位数再比较,再降低搜索范围,继续下去直到找到最终结果(2) 描述你在进行实现时,关键函数或操作内部关键算法;分析这个算法时、空复杂度,并说明你设计巧妙之处,如有创新,将其清楚表述。int findMedian(int* x, int* y, int n) if(n=1) return *x = *y? *x:*y; int m=(n-1)/2; int p=m+1; if(n%2!=0) p-; if(*(x+m)=*(y+m) return *(x+m); else if(*(x+m)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 设计 分析 试验 参考 指导书
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。