算法设计基础

算法设计基础
分享 推荐 5 收藏 111 阅读 5.4K
汪江桦 , 汤建国 (作者) 978-7-115-53583-2

关于本书的内容有任何问题,请联系 祝智敏

(1)理论难度适当、实训任务充实
针对高职院校教学的特点,本书理论内容的设计难度适宜,突出了实训内容的教学设计,以加强学生运用所学算法知识解决实际问题的意识和能力。
(2)案例分析翔实、易懂
为了让学生更好地体会书中算法的易学、易用性,本书给出了很多案例分析素材,并对其进行了详细讲解,以提高学生学习算法的兴趣,使学生能够更好地了解如何使用算法解决实际问题。
(3)注重问题导向的学习内容设计
本书将各种算法应用于多个有趣的现实问题的解决过程中,以问题为导向来促进学生思考并体会算法的精妙之处与用途,进而提升其学习效果。
(4)注重算法之间的共性与个性的比较
在不同算法的案例分析中,既有对解决相同问题的设计分析,也有对各算法适宜解决问题的案例分析,这可使学生深刻体会所学算法间的相似与差异,从而更好地掌握各个算法的根本特点与使用场景。

内容摘要

→ 本书从算法设计策略和算法实际应用两方面入手,较为全面地介绍了6类常用的算法:蛮力法、分治法、贪心法、动态规划法、回溯法和分支限界法。本书以“算法设计基础知识+算法经典应用案例”为主线,循序渐进地讲解了各章内容,由浅入深地分析了各类算法的特点,帮助读者理解算法的基本概念、掌握算法的关键设计步骤和了解算法所适用的问题。本书每章均配有相关习题和实训内容。通过练习与实践,读者可巩固所学的内容。
→ 本书可以作为计算机相关专业算法设计与分析课程的教材,也适合计算机软件开发人员和广大计算机爱好者自学使用。

内容介绍

目录

第1章 概论 1
1.1 算法的基本概念 2
1.1.1 算法的含义 2
1.1.2 算法的作用 3
1.1.3 算法的特性 4
1.1.4 算法的描述 6
1.1.5 算法设计的步骤 8
1.2 算法分析 9
1.2.1 算法的时间复杂度与大O表示法 9
1.2.2 算法的时间复杂度分析 12
1.2.3 算法的空间复杂度分析 15
1.3 算法设计示例 16
1.4 本章小结 20
习题1 20
实训1 22

第2章 蛮力法 25
2.1 蛮力法概述 26
2.1.1 蛮力法的基本思想 26
2.1.2 蛮力法解题格式 28
2.2 蛮力法的应用 31
2.2.1 顺序查找 31
2.2.2 冒泡排序 32
2.2.3 直接选择排序 34
2.2.4 直接插入排序 36
2.3 蛮力法的分析与设计 37
2.3.1 百钱百鸡问题 38
2.3.2 解数字谜 39
2.3.3 狱吏问题 41
2.4 蛮力法示例 43
2.5 本章小结 49
习题2 49
实训2 50

第3章 分治法 53
3.1 递归技术 54
3.1.1 递归的定义 54
3.1.2 递归的执行过程 55
3.1.3 递归的设计方法 56
3.1.4 递归技术效率分析 59
3.1.5 递归过程 60
3.2 递归设计实例 63
3.3 分治法概述 66
3.3.1 分治法的基本思想 67
3.3.2 快速排序 69
3.3.3 二路归并排序 71
3.3.4 二分查找 73
3.4 分治法示例 74
3.5 本章小结 77
习题3 78
实训3 79

第4章 贪心法 81
4.1 贪心法概述 82
4.1.1 贪心法的基本思想 82
4.1.2 活动安排问题 83
4.1.3 币种统计问题 86
4.2 贪心法的应用 87
4.2.1 哈夫曼树 87
4.2.2 哈夫曼编码 88
4.2.3 最小生成树 90
4.2.4 单源最短路径 92
4.3 贪心法的分析与设计 94
4.3.1 背包问题 94
4.3.2 田忌赛马问题 96
4.3.3 多机调度问题 98
4.4 贪心法示例 99
4.5 本章小结 102
习题4 102
实训4 104

第5章 动态规划法 105
5.1 动态规划法概述 106
5.1.1 动态规划法的基本思想 106
5.1.2 最优决策表 106
5.2 动态规划法的应用 112
5.2.1 斐波那契数列 112
5.2.2 数字塔问题 114
5.2.3 凑硬币问题 115
5.2.4 0-1背包问题 117
5.3 动态规划法的分析与设计 120
5.4 动态规划法示例 124
5.5 本章小结 126
习题5 126
实训5 128

第6章 回溯法 131
6.1 回溯法概述 132
6.1.1 问题的解空间 132
6.1.2 回溯法的基本思想 133
6.1.3 0-1背包问题 134
6.2 回溯法示例 137
6.3 本章小结 147
习题6 147
实训6 149

第7章 分支限界法 151
7.1 分支限界法概述 152
7.1.1 分支限界法的基本思想 152
7.1.2 0-1背包问题 153
7.2 分支限界法示例 158
7.3 本章小结 163
习题7 163
实训7 164

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

汪江桦
中国科学院大学博士,副教授,主要研究方向为信息分析与数据挖掘,发表核心期刊级以上级别学术论文10余篇,主持省部级项目3项,作为主研人员参与国家自然科学基金项目2项。
汤建国
电子科技大学博士,副教授,主要研究方向为粒计算和机器学习,发表论文20余篇,其中SCI检索论文4篇,EI检索论文10余篇,中文核心期刊论文数篇;主持国家自然科学基金项目2项,各类省部级项目5项。

推荐用户

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部