- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法设计与分析 实验讲义(2012_09_17)
云南大学信息学院
计算机科学与技术专业本科
《算法设计与分析》
实验讲义
任课教师:岳昆
2012年9月前 言
计算思维、算法设计能力,程序实现、系统开发能力,分别是计算机科学与技术专业研究型(科学与分析)和应用型(工程与综合)人才培养的目标,这些目标由一系列专业课程支撑,《算法设计与分析》是核心课程《算法设计与分析》目 录
第1章 算法分析基本概念 4
实验1.1 算法计算时间复杂度和增长率(4学时) 4
1. 实验目的 4
2. 原理解析 4
3. 实验内容 6
4. 实验步骤和要求 6
第2章 搜索算法 8
实验2.1 搜索算法的实现,时间复杂度分析与测试(4学时) 8
1. 实验目的 8
2. 原理解析 8
3. 实验内容 9
4. 实验步骤和要求 9
第3章 递归与分治算法 11
实验3.1 分治算法的递归程序实现与时间复杂度测试(4学时) 11
1. 实验目的 11
2. 原理解析 11
3. 实验内容 13
4. 实验步骤和要求 13
第4章 动态规划算法 15
实验4.1 动态规划算法的实现与时间复杂度测试(3学时) 15
1. 实验目的 15
2. 原理解析 15
3. 实验内容 16
4. 实验步骤和要求 16
实验4.2 动态规划算法的适应性测试(3学时) 17
1. 实验目的 17
2. 原理解析 17
3. 实验内容 18
4. 实验步骤和要求 18
第5章 贪心算法 19
实验5.1 贪心算法的实现与时间复杂度测试(4学时) 19
1. 实验目的 19
2. 原理解析 19
3. 实验内容 20
4. 实验步骤和要求 20
第6章 回溯算法 22
实验6.1 回溯算法的实现和时间复杂度测试(4学时) 22
1. 实验目的 22
2. 原理解析 22
3. 实验内容 23
4. 实验步骤和要求 23
第7章 算法设计与性能测试综合练习 24
实验7.1 哈夫曼编码与数据压缩 24
实验7.2 最优选课 24
附录:实验报告撰写规范 26
第1章 算法分析基本概念
实验1.1 算法计算时间复杂度和增长率(4学时)
1. 实验目的
通过算法的程序实现和执行时间测试、并与理论上的结论进行对比分析,深入理解算法时间复杂度分析中对于输入数据考虑其等价类的意义,理解算法时间复杂度渐进性态和和增长率的概念,为后续学习和实验奠定基础,同时也学习程序效率测试的基本思路。
2. 原理解析
算法时间复杂度分析的相关概念
(1) 算法的计算时间取决于算法中某些操作的执行次数,这些操作是算法时间复杂度分析的依据。
(2) 增长率反映了算法的计算时间复杂度,即随着算法输入规模的增加、算法计算时间增加的趋势。
(3) 算法的计算时间复杂度针对输入数据的等价类来分析或测试。
随机数生成算法
通过程序生成(伪)随机数,作为实验用测试数据。可使用编程语言自带的random函数生成,也可以采用一些有效的随机数生成算法生成,例如“线性同余法”,基于该算法,只要参数选择合适,所产生的伪随机数就能满足均匀性和独立性,与真正的随机数具有相近的性质通过设置X+1=(aXi+c) mod m, n(0,其中的个整数m——模数m0;a——乘数0(am;c——增量0(cm;X0——开始值0(X0m。这样得到所求的随机数序列Xi},称作线形同余序列。 (list, N)
numberOfPairs=N
swappedElements=true
while swappedElements do
numberOfPairs=numberOfPairs-1
swappedElements=false
for i=1 to numberOfPairs do
if list[i]list[i+1] then
swap(list[i],list[i+1])
swappedElements=true
end if
end for
(2) MergeSort(list, first, last)
if firstlast then
middle=(first+last)/2
MergeSort(list, first, middle)
MergeSort(list, middle+1, last)
MergeLists(list, first, middle, middle+1, last)
end if
MergeLists(list, start1, end1, start2, end2)
while (start1≤end1) and (star
您可能关注的文档
- 第十二章图形图象与多媒体.doc
- 第十二章肌肉骨骼系统和结缔组织疾病病人的护理练习题doc.doc
- 第十五章 相对论简介 章末测试(人教版选修3-4).doc
- 第十单元 酸和碱 教学设计.doc
- 第十单元第二十三讲.ppt.Convertor.doc
- 第十单元课后练习1.doc
- 第十四单元 西方人文精神的起源及其发展与近代以来世界的科学发展历程.doc
- 第十章 社会互动.doc
- 第十章答案解析doc.doc
- 第十章精神障碍病人的护理练习题doc.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)