注册 登录 进入教材巡展 进入在线书城
#
  • #

出版时间:2018年1月

出版社:人民邮电出版社

获奖信息:工业和信息化普通高等教育“十三五”规划教材  

以下为《算法设计与分析》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 人民邮电出版社
  • 9787115472663
  • 1-3
  • 233294
  • 46213034-5
  • 平装
  • 16开
  • 2018年1月
  • 335
  • 204
  • 工学
  • 计算机科学与技术
  • TP301.6
  • 软件工程
  • 本科
内容简介
本书以程序设计作为基础,数据结构作为工具,六大核心算法作为目标,系统地介绍了算法设计中典型问题的求解过程。
全书内容包括算法设计基础、递归算法、分治算法、贪心算法、动态规划算法、回溯算法、分支限界算法、实验指导。六大核心算法后都配有典型问题的C 代码,并结合实验指导辅助读者进行算法实践训练。
目录
第1章 算法设计与分析基础 1
1.1 算法概述 2
1.1.1 什么是算法 2
1.1.2 学习算法的重要性 6
1.2 问题的求解过程 6
1.2.1 问题及问题的求解过程 6
1.2.2 算法设计与算法表示 7
1.2.3 算法确认和算法分析 8
1.3 算法的复杂性分析 8
1.3.1 算法评价的基本原则 9
1.3.2 影响程序运行时间的因素 10
1.3.3 算法复杂度 11
1.3.4 使用程序步分析算法 14
1.3.5 渐近表示法 15
1.4 算法设计中常见的重要问题类型 18
1.4.1 排序问题 18
1.4.2 查找问题 19
1.4.3 图问题 19
1.4.4 组合问题 20
1.4.5 几何问题 20
1.4.6 数值问题 21
1.4.7 其他常见问题 21
1.5 常用的算法设计方法 22
1.5.1 数值计算算法 23
1.5.2 非数值计算算法 24
1.6 小结 28
练习题 29
第2章 递归算法 31
2.1 递归算法的思想 32
2.1.1 递归算法的特性 32
2.1.2 递归算法的执行过程 32
2.1.3 递推关系 33
2.2 递归法应用举例 37
2.2.1 汉诺塔问题 37
2.2.2 斐波那契数列问题 39
2.2.3 八皇后问题 40
2.3 典型问题的C 程序 43
2.4 小结 48
练习题 48
第3章 分治算法 50
3.1 分治算法的思想 51
3.2 排序问题中的分治算法 52
3.2.1 归并排序 53
3.2.2 快速排序 55
3.3 查找问题中的分治算法 57
3.3.1 折半查找 57
3.3.2 选择问题 59
3.4 组合问题中的分治算法 60
3.4.1 最大子段和问题 60
3.4.2 棋盘覆盖问题 62
3.5 典型问题的C 程序 64
3.6 小结 70
练习题 71
第4章 贪心算法 72
4.1 贪心算法的思想 73
4.1.1 问题的提出 73
4.1.2 贪心算法设计思想 73
4.1.3 贪心算法的基本要素 74
4.1.4 贪心算法的求解过程 74
4.2 组合问题中的贪心算法 75
4.2.1 背包问题 75
4.2.2 多机调度问题 77
4.3 图问题中的贪心算法 78
4.3.1 单源最短路径问题 78
4.3.2 最小代价生成树 80
4.4 典型问题的C 程序 84
4.5 小结 92
练习题 92
第5章 动态规划算法 94
5.1 动态规划算法的思想 95
5.2 查找问题中的动态规划算法 97
5.2.1 最优二叉搜索树 97
5.2.2 近似串匹配问题 100
5.3 图问题中的动态规划算法 102
5.3.1 多段图问题 102
5.3.2 每对结点间的最短距离 105
5.4 组合问题中的动态规划算法 108
5.4.1 0/1背包问题 108
5.4.2 最长公共子序列 112
5.4.3 流水作业调度 115
5.5 典型问题的C 程序 120
5.6 小结 125
练习题 126
第6章 回溯算法 128
6.1 回溯算法的思想 129
6.1.1 基本概念 129
6.1.2 基本思路 130
6.1.3 回溯算法的适用条件 132
6.1.4 回溯算法的效率估计 132
6.2 组合问题中的回溯算法 133
6.2.1 装载问题 133
6.2.2 0/1背包问题 134
6.2.3 n皇后问题 136
6.2.4 图的m着色问题 139
6.2.5 子集和数问题 141
6.3 图问题中的回溯算法 143
6.3.1 深度优先搜索 143
6.3.2 货郎(TSP)问题 143
6.3.3 最大团(MCP)问题 145
6.3.4 哈密顿环问题 146
6.4 算法效率的影响因素及改进途径 148
6.4.1 影响算法效率的因素 148
6.4.2 回溯算法的改进途径 148
6.5 典型问题的C 程序 148
6.6 小结 165
练习题 165
第7章 分支限界算法 167
7.1 分支限界算法的思想 168
7.2 求最优解的分支限界算法 170
7.2.1 FIFO分支限界算法 171
7.2.2 LC分支限界算法 172
7.3 组合问题中的分支限界算法 173
7.3.1 0/1背包问题 173
7.3.2 带限期的作业排序 175
7.4 图问题中的分支限界算法 179
7.4.1 旅行商问题 179
7.4.2 单源点最短路径问题 182
7.5 典型问题的C 程序 184
7.6 小结 188
练习题 188
附录 实验指导 190
实验一 递归与分治算法 191
1.1 实验目的与要求 191
1.2 实验课时 191
1.3 实验原理 191
1.4 实验题目 191
1.5 思考题 192
实验二 贪心算法 192
2.1 实验目的与要求 192
2.2 实验课时 192
2.3 实验原理 192
2.4 实验题目 193
2.5 思考题 194
实验三 动态规划算法 194
3.1 实验目的与要求 194
3.2 实验课时 195
3.3 实验原理 195
3.4 实验题目 195
3.5 思考题 197
实验四 回溯算法 197
4.1 实验目的与要求 197
4.2 实验课时 197
4.3 实验原理 197
4.4 实验题目 198
4.5 思考题 199
实验五 分支限界算法 199
5.1 实验目的与要求 199
5.2 实验课时 200
5.3 实验原理 200
5.4 实验题目 200
5.5 思考题 203
参考文献 204