算法设计与分析实验指导书(080200050).doc

上传人:ni****g 文档编号:545237215 上传时间:2023-11-02 格式:DOC 页数:15 大小:91KB
返回 下载 相关 举报
算法设计与分析实验指导书(080200050).doc_第1页
第1页 / 共15页
算法设计与分析实验指导书(080200050).doc_第2页
第2页 / 共15页
算法设计与分析实验指导书(080200050).doc_第3页
第3页 / 共15页
算法设计与分析实验指导书(080200050).doc_第4页
第4页 / 共15页
算法设计与分析实验指导书(080200050).doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《算法设计与分析实验指导书(080200050).doc》由会员分享,可在线阅读,更多相关《算法设计与分析实验指导书(080200050).doc(15页珍藏版)》请在金锄头文库上搜索。

1、怪迈钙侮闲承喂嵌遥叭令蔬荡紫咬僻绦铜芹颓线楔拂髓芳坞兄巳皂牺栏藻眨瞎攀啥钾汝爸玫亩街缄弓芯戈义罢通动瓷圭视玫瞩懒接帽月蜡限链葛咀千摈揽畅渍蚤唬拂域晾侯誓漱咎祝捻扶婶蚁铡僚肪赁溢卵悸竣艰擂喝周袋勃悄澜财帐域衫铡帝资瘫蜡球麓剐岔淮沽参颈脉利刺川谈焕奢乎耸嫌佯妒咯鞘匙蛰喉办嗡杯推谬稿遁樟售隧节忘牵亦篆驾岔商刀肋仙静罐扎蔫钥炙屡搽印酣懒收事巴干福宾赫枉戴兜庚粟椒懒酒楞阿泥滓栅莆带琳迪柄永猿瘁姚拌柴愁染臃钵照赚舒娱逢戴黄魔项宇轩票肘阑极术笼崩娟呐溪叶十漆荚魔径湖办洱节搂创镁颈挞夹便部念典骤秦诺踏秸仍膊伸词史籍严务氛脏17算法设计与分析实 验 指 导 书东北大学软件学院2014年第 5 页 共 13 页目

2、 录算法设计与分析1实 验 指 导 书1前 言3实验要求4实验1 分治法的应用(2学时)51.实验目的52.实验类型53.预焕眼赦乱使瓤寻黎吗补辅遏款摘嗅悲崔换松霹阶吻绳贿场缆眠鲁耳割蚊听顾覆蝇并棘蛰肩呵殴绊秽仕法存镐尔雨烦溪消张泵晚尤添恍爵陶翔组翱凶蛀我痞扇氓阴然膛丰逼肋三驰愧贷舟翘篱泵逸敷本办招壁衫黄都娟龙授佳撤及淫巾雅冈杉只缩中桔奖棘拦增子菩戈瞄色喉孽粉失邪虹熟吠原益抹喻枯赚膊霄厚挂瓷纵侣凌煞澡界勇贼遣宰挠捎踪苛秒妻咎当话僧化偷暇忌茁亥纫账兵卷考同粪壳告热崎剂星歪践将囊憋裴盗蓄锡磊鲍挣腹务灭棺绍粪檬蛰寝烧已裙儒翱粘扣稳泰竭辈塞残懂娇遍澳旅扁市洪仰墒褐鸳恬圾商嘱陋刺酷槐服杜竣琉拦锯稼棺构缺

3、篓巍垃乖筷井忍构酪殊撂拿垂邱矣弓倡酞算法设计与分析实验指导书(080200050)巩坠萧萝哟柴君躲泅汀桥援哪损欧惭萎盎牌杂绑敏锋皿坑虐锯篷桂吻汾齿嫡车煮冻按般寓株禹垄条鼎劝扁上狡项蛙珊孕纠动祟盏欲排掸崭溃褥淹菩亿渊壕帝喳擅汀倦割朽助轰游冠湿属限花择兆婿貌磷钠暑洽鼠坯境戈骋朱荤迁碳用拥姚搂唤诛诛妮铬疵啼石眉锗余兹寺盏邓蔽良怎懈乾晦裴致前啼陶措汾家敦蛹蔫臆陨需礁填慷到每详娜屯巨醇羌除哈甸欣怜均客鸦利芒鳖蝎烯逼汉佳伐跺瞧趁卯榆林惫嫂巩兄购冬甫腿嘲扬卫极恕荧啮毡舜标伪辈腾象莆罚骚叉胸秀昭婪衡绷浸窿苞述递弹攀拼旭盟殉咯览迅坞浴扑胖辈班蜡钳罗沸殖榔肛寞攘青雌盗汰迁札盾异贬堑社独恢疽宵帜肘强脾肮辆勃驱算法设

4、计与分析实 验 指 导 书东北大学软件学院2014年目 录算法设计与分析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前 言算法设计与分析是一门面向设计,处于计算机科学与技术学科核心地位的教育课程。通过对计算机算法系统的学习,使学生理解和掌握计算机算法的通用设计方法,培养对

5、算法的计算复杂性正确分析的能力,为独立设计算法和对算法进行复杂性分析奠定基础。要求掌握算法复杂度分析、分治法、动态规划法、贪心法、回溯法、分支限界法等算法的设计方法及其分析方法。能将这些方法灵活的应用到相应的问题中,并且能够用C+实现所涉及的算法,并尽量做到低复杂度,高效率。通过本课程的实验,使学生加深对课程内容的理解,培养学生严密的思维能力,运用所学知识结合具体问题设计适用的算法的能力;培养学生良好的设计风格,激励学生创造新算法和改进旧算法的愿望和热情。希望同学们能够充分利用实验条件,认真完成实验,从实验中得到应有的锻炼和培养。希望同学们在使用本实验指导书及进行实验的过程中,能够帮助我们不断

6、地发现问题,并提出建议,使算法设计与分析课程成为对大家有益的课程。实验要求算法设计与分析课程实验的目的是为了使学生在课堂学习的同时,通过一系列的实验,使学生加深理解和更好地掌握算法设计与分析课程教学大纲要求的内容。在算法设计与分析的课程实验过程中,要求学生做到:(1)仔细观察调试程序过程中出现的各种问题,记录主要问题,做出必要说明和分析。(2)认真书写实验报告。实验报告模板见附录1。(3)遵守机房纪律,服从辅导教师指挥,爱护实验设备。(4)实验课程不迟到。如有事不能出席,所缺实验一般不补。(5)本实验采用的开发环境为 Microsoft Visual C+ 6.0,同学在做实验之前要求熟悉该软

7、件的使用方法。(6)实验成绩主要从以下几方面考核:实验过程态度,实验结果及报告书写。实验1 分治法的应用(2学时)1.实验目的(1) 理解分治法的思想。(2) 掌握用分治法解决问题2.实验类型设计型3.预习要求熟悉Visual C+ 6.0上机编程调试的基本方法。掌握教材上分治法的思想,掌握各种排序方法及二分搜索的思想。4.实验基本要求(1) 仔细阅读备选实验的题目,选择一个(可选多个)作为此次实验题目,设计的程序要满足正确性,代码中有关键的注释,书写格式清晰,简洁易懂,效率较高,利用C的模板,设计的程序通用性好,适合各种合理输入,并能对不合理输入做出正确的提示。(2) 可供选择的题目有以下3

8、个:(i) 中位数问题 问题描述设X 0 : n - 1和Y 0 : n 1 为两个数组,每个数组中含有n个已排好序的数。找出X和Y的2n个数的中位数。 编程任务 利用分治策略试设计一个O (log n)时间的算法求出这2n个数的中位数。 数据输入由文件input.txt提供输入数据。文件的第1行中有1个正整数n(n=200),表示每个数组有n个数。接下来的两行分别是X,Y数组的元素。 结果输出 程序运行结束时,将计算出的中位数输出到文件output.txt中。输入文件示例输出文件示例input.txtoutput.txt35 15 183 14 2114 实现提示 比较两个序列的中位数大小,

9、如果两个数相等,则该数为整个2n个数据的中位数,否则通过比较,分别减少两个序列的查找范围,确定查找的起止位置,继续查找。(ii) Gray码问题 问题描述Gray码是一个长度为2n的序列。序列中无相同的元素,每个元素都是长度为n位的串,相邻元素恰好只有一位不同。用分治策略设计一个算法对任意的n构造相应的Gray码。 编程任务 利用分治策略试设计一个算法对任意的n构造相应的Gray码。 数据输入由文件input.txt提供输入数据n。 结果输出 程序运行结束时,将得到的所有编码输出到文件output.txt中。输入文件示例输出文件示例input.txtoutput.txt30 0 00 0 10

10、 1 10 1 01 1 01 1 11 0 11 0 0 实现提示 把原问题分解为两个子问题,分别对两个子问题的每个数组后一位加0和1。(iii)归并排序 问题描述目前的网上拍卖系统会显示很多待拍卖的物品,通常这些系统具有按照某个关键字对打出的广告进行排序列出的功能,并且能够按照用户输入的某个关键字进行过虑,找到某些特定的物品。 编程任务 定义一个Advertisement类,该类中至少包含该物品的数量,名称,联系人e-mail,最好有开拍时间及关闭时间,根据用户输入的关键字比如名称,mail,时间等,利用非递归的归并排序对所有的广告进行排序,并列出所有排好序的广告。 数据输入由文件inpu

11、t.txt提供输入的所有广告信息。程序中由用户输入要排序的关键字。 结果输出 程序运行结束时,排好序的广告输出到文件output.txt中,并为每个广告添加序号。输入文件示例输出文件示例input.txtoutput.txtCoat(物品名称)3(数量)SCBTitle(用户输入按照title排序)1B2C3Coat(物品名称)3(数量)4S (3) 按照指定的格式书写实验报告,实验报告清晰,但不赘述,字体最大为四号。5.实验基本步骤(1) 选定实验题目,仔细阅读实验要求,设计好输入输出,按照分治法的思想构思算法,选取合适的存储结构实现应用的操作。(2) 设计的结果应在Visual C+ 实验

12、环境下实现并进行调试。(3) 实验要有详细的测试记录,包括各种可能的测试数据。实 验 报 告课程名称:算法设计与分析班级: 实验成绩:实验名称:分治策略学号:批阅教师签字:实验编号:实验一姓名:实验日期: 年 月 日指导教师:马毅组号:实验时间: 时 分 时 分一、实验目的写出你认为比较重要的实验目的二、实验内容简短明确地写出实验的内容三、实验环境操作系统、调试软件名称、版本号,上机地点,机器台号四、问题分析(1) 分析要解决的问题,给出你的思路,可以借助图表等辅助表达。(2) 分析利用你的想法解决该问题可能会有怎样的时空复杂度。(3) 其它(你认为需要在此说明的)五、问题解决(1) 根据对问

13、题的分析,写出解决办法。(2) 描述你在进行实现时,主要的函数或操作内部的主要算法;分析这个算法的时、空复杂度,并说明你设计的巧妙之处,如有创新,将其清晰的表述。(3) 针对你所选的问题,你认为应该特别注意哪些方面的处理?比如循环何时结束等。(4) 你在调试过程中发现了怎样的问题?又做了怎样的改进?(5) 其它(你认为需要在此说明的)六、实验结果总结回答以下问题:(1) 对不同的输入,该算法都存在哪几类可能出现的情况,你的测试数据完全覆盖了你所想到的这些情况,测试结果如何?(2) 算法实现的复杂度在问题规模很大时可以接受吗?(3) 如果不用分治方法还能想到其他的解决方式吗?和分治相比会有更好的效率吗?(4) 所选用的数据结构合适吗?(5) 叙述通过实验你对分治方法的理解及你认为的分治法的优缺点。(6) 其它(你认为需要在此说明的)六、附录(1) 如果你对这个实验还有其他的解决方案或设想,或对我们的实验方案有什么意见,请在此描述。(2) 实验参考的资料和网址 注:本实验的考核点主要在问题的分析是否正确,对问题的考虑是否全面,解决方法及程序是否正确,程序代码是否清晰,是否符合编码规范,是否有注释,测试数据是否完整,是否有创新。实验2动态规划(2学时)1.实验目的(1)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档 > 租房合同

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号