算法设计与分析 C++语言描述 第3版PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:陈慧南编著
- 出 版 社:北京:电子工业出版社
- 出版年份:2018
- ISBN:9787121330544
- 页数:304 页
第1部分 算法和算法分析 1
第1章 算法问题求解基础 1
1.1 算法概述 1
1.1.1 什么是算法 1
1.1.2 为什么学习算法 3
1.2 问题求解方法 3
1.2.1 问题和问题求解 4
1.2.2 问题求解过程 4
1.2.3 系统生命周期 5
1.3 算法设计与分析 5
1.3.1 算法问题求解过程 5
1.3.2 如何设计算法 6
1.3.3 如何表示算法 6
1.3.4 如何确认算法 6
1.3.5 如何分析算法 7
1.4 递归和归纳 7
1.4.1 递归 7
1.4.2 递归算法示例 9
1.4.3 归纳证明 11
本章小结 12
习题1 13
第2章 算法分析基础 14
2.1 算法复杂度 14
2.1.1 什么是好的算法 14
2.1.2 影响程序运行时间的因素 15
2.1.3 算法的时间复杂度 16
2.1.4 使用程序步分析算法 17
2.1.5 算法的空间复杂度 18
2.2 渐近表示法 19
2.2.1 大O记号 19
2.2.2 Ω记号 20
2.2.3 Θ记号 21
2.2.4 小。记号 21
2.2.5 算法按时间复杂度分类 21
2.3 递推关系 22
2.3.1 递推方程 22
2.3.2 替换方法 23
2.3.3 迭代方法 23
2.3.4 主方法 24
2.4 分摊分析 25
2.4.1 聚集方法 26
2.4.2 会计方法 26
2.4.3 势能方法 27
本章小结 28
习题2 28
第3章 伸展树与跳表 30
3.1 伸展树 30
3.1.1 二叉搜索树 30
3.1.2 自调节树和伸展树 30
3.1.3 伸展操作 31
3.1.4 伸展树类 32
3.1.5 旋转的实现 34
3.1.6 插入运算的实现 34
3.1.7 分摊分析 36
3.2 跳表 38
3.2.1 什么是跳表 38
3.2.2 跳表类 39
3.2.3 级数分配 41
3.2.4 插入运算的实现 42
3.2.5 性能分析 43
本章小结 44
习题3 44
第2部分 算法设计策略 45
第4章 基本搜索和遍历方法 45
4.1 基本概念 45
4.2 图的搜索和遍历 46
4.2.1 搜索方法 46
4.2.2 邻接表类 47
4.2.3 广度优先搜索 48
4.2.4 深度优先搜索 50
4.3 双连通分量 53
4.3.1 基本概念 53
4.3.2 发现关节点 54
4.3.3 构造双连通图 57
4.4 或图 58
4.4.1 问题分解 58
4.4.2 判断与或树是否可解 59
4.4.3 构建解树 61
本章小结 62
习题4 62
第5章 分治法 64
5.1 一般方法 64
5.1.1 分治法的基本思想 64
5.1.2 算法分析 65
5.1.3 数据结构 66
5.2 求最大最小元 67
5.2.1 分治法求解 67
5.2.2 时间分析 68
5.3 二分搜索 69
5.3.1 分治法求解 69
5.3.2 对半搜索 70
5.3.3 二叉判定树 71
5.3.4 搜索算法的时间下界 73
5.4 排序问题 74
5.4.1 合并排序 74
5.4.2 快速排序 76
5.4.3 排序算法的时间下界 80
5.5 选择问题 82
5.5.1 分治法求解 82
5.5.2 随机选择主元 82
5.5.3 线性时间选择算法 84
5.5.4 时间分析 86
5.5.5 允许重复元素的选择算法 86
5.6 斯特拉森矩阵乘法 87
5.6.1 分治法求解 87
5.6.2 斯特拉森分治法 88
本章小结 88
习题5 88
第6章 贪心法 91
6.1 一般方法 91
6.2 背包问题 92
6.2.1 问题描述 92
6.2.2 贪心法求解 92
6.2.3 算法正确性 94
6.3 带时限的作业排序 95
6.3.1 问题描述 95
6.3.2 贪心法求解 95
6.3.3 算法正确性 97
6.3.4 可行性判定 97
6.3.5 作业排序贪心算法 98
6.3.6 一种改进算法 99
6.4 最佳合并模式 102
6.4.1 问题描述 102
6.4.2 贪心法求解 103
6.4.3 算法正确性 104
6.5 最小代价生成树 105
6.5.1 问题描述 105
6.5.2 贪心法求解 105
6.5.3 普里姆算法 106
6.5.4 克鲁斯卡尔算法 109
6.5.5 算法正确性 111
6.6 单源最短路径 111
6.6.1 问题描述 112
6.6.2 贪心法求解 112
6.6.3 迪杰斯特拉算法 112
6.6.4 算法正确性 115
6.7 磁带最优存储 116
6.7.1 单带最优存储 116
6.7.2 多带最优存储 117
6.8 贪心法的基本要素 119
6.8.1 最优量度标准 119
6.8.2 最优子结构 119
本章小结 120
习题6 120
第7章 动态规划法 122
7.1 一般方法和基本要素 122
7.1.1 一般方法 122
7.1.2 基本要素 123
7.1.3 多段图问题 123
7.1.4 资源分配问题 126
7.1.5 关键路径问题 127
7.2 每对结点间的最短路径 129
7.2.1 问题描述 129
7.2.2 动态规划法求解 130
7.2.3 弗洛伊德算法 131
7.2.4 算法正确性 132
7.3 矩阵连乘 132
7.3.1 问题描述 132
7.3.2 动态规划法求解 133
7.3.3 矩阵连乘算法 134
7.3.4 备忘录方法 136
7.4 最长公共子序列 137
7.4.1 问题描述 137
7.4.2 动态规划法求解 137
7.4.3 最长公共子序列算法 138
7.4.4 算法的改进 140
7.5 最优二叉搜索树 140
7.5.1 问题描述 140
7.5.2 动态规划法求解 141
7.5.3 最优二叉搜索树算法 143
7.6 0/1背包 144
7.6.1 问题描述 144
7.6.2 动态规划法求解 145
7.6.3 0/1背包算法框架 147
7.6.4 0/1背包算法 150
7.6.5 性能分析 152
7.6.6 使用启发式方法 153
7.7 流水作业调度 154
7.7.1 问题描述 154
7.7.2 动态规划法求解 155
7.7.3 Johnson算法 157
本章小结 158
习题7 158
第8章 回溯法 160
8.1 一般方法 160
8.1.1 基本概念 160
8.1.2 剪枝函数和回溯法 161
8.1.3 回溯法的效率分析 163
8.2 n-皇后 163
8.2.1 问题描述 163
8.2.2 回溯法求解 164
8.2.3 n-皇后算法 165
8.2.4 时间分析 166
8.3 子集和数 167
8.3.1 问题描述 167
8.3.2 回溯法求解 167
8.3.3 子集和数算法 168
8.4 图的着色 170
8.4.1 问题描述 170
8.4.2 回溯法求解 170
8.4.3 图着色算法 171
8.4.4 时间分析 172
8.5 哈密顿环 172
8.5.1 问题描述 172
8.5.2 哈密顿环算法 173
8.6 0/1背包 174
8.6.1 问题描述 174
8.6.2 回溯法求解 174
8.6.3 限界函数 175
8.6.4 0/1背包算法 176
8.7 批处理作业调度 178
8.7.1 问题描述 178
8.7.2 回溯法求解 178
8.7.3 批处理作业调度算法 178
本章小结 180
习题8 180
第9章 分枝限界法 182
9.1 一般方法 182
9.1.1 分枝限界法概述 182
9.1.2 LC分枝限界法 184
9.1.3 15谜问题 185
9.2 求最优解的分枝限界法 187
9.2.1 上下界函数 187
9.2.2 FIFO分枝限界法 188
9.2.3 LC分枝限界法 189
9.3 带时限的作业排序 190
9.3.1 问题描述 190
9.3.2 分枝限界法求解 190
9.3.3 带时限作业排序算法 191
9.4 0/1背包 193
9.4.1 问题描述 193
9.4.2 分枝限界法求解 194
9.4.3 0/1背包算法 195
9.5 旅行商问题 197
9.5.1 问题描述 197
9.5.2 分枝限界法求解 198
9.6 批处理作业调度 201
9.6.1 问题描述 201
9.6.2 分枝限界法求解 201
9.6.3 批处理作业调度算法 202
本章小结 205
习题9 205
第3部分 求解困难问题 207
第10章 NP完全问题 207
10.1 基本概念 207
10.1.1 不确定算法和不确定机 208
10.1.2 可满足性问题 210
10.1.3 P类和NP类问题 211
10.1.4 NP难度和NP完全问题 211
10.2 Cook定理和证明 212
10.2.1 Cook定理 212
10.2.2 简化的不确定机模型 212
10.2.3 证明Cook定理 213
10.3 一些典型的NP完全问题 217
10.3.1 最大集团 217
10.3.2 顶点覆盖 218
10.3.3 三元CNF可满足性 219
10.3.4 图的着色数 220
10.3.5 有向哈密顿环 221
10.3.6 恰切覆盖 223
10.3.7 子集和数 225
10.3.8 分划问题 225
本章小结 226
习题10 226
第11章 随机算法 228
11.1 基本概念 228
11.1.1 随机算法概述 228
11.1.2 随机数发生器 228
11.1.3 随机算法分类 228
11.2 拉斯维加斯算法 229
11.2.1 标识重复元素算法 229
11.2.2 性能分析 230
11.3 蒙特卡罗算法 231
11.3.1 素数测试问题 231
11.3.2 伪素数测试 231
11.3.3 米勒-拉宾算法 232
11.3.4 性能分析 233
11.4 舍伍德算法 234
11.4.1 随机快速排序算法 234
11.4.2 舍伍德算法的其他应用 234
本章小结 234
习题11 235
第12章 近似算法 236
12.1 近似算法的性能 236
12.1.1 基本概念 236
12.1.2 绝对性能保证 236
12.1.3 相对性能保证 237
12.1.4 近似方案 238
12.2 绝对近似算法 238
12.2.1 最多程序存储问题 238
12.2.2 NP难度绝对近似算法 239
12.3 ε-近似算法 240
12.3.1 顶点覆盖近似算法 240
12.3.2 旅行商问题 241
12.3.3 NP难度ε-近似旅行商问题 242
12.3.4 具有三角不等式性质的旅行商问题 243
12.3.5 任务调度近似算法 244
12.4 ε(n)-近似算法 247
12.4.1 集合覆盖问题 247
12.4.2 集合覆盖近似算法 247
12.4.3 ln(n)-近似算法 248
12.5 多项式时间近似方案 249
12.5.1 任务调度近似方案 249
12.5.2 多项式时间近似方案 251
12.6 子集和数的完全多项式时间近似方案 251
12.6.1 子集和数的指数时间算法 251
12.6.2 完全多项式时间近似方案 252
本章小结 254
习题12 254
第13章 遗传算法 256
13.1 进化计算 256
13.2 遗传算法的生物学基础 257
13.3 遗传算法的基本思想 258
13.4 基本遗传算法 259
13.4.1 基本遗传算法构成要素 259
13.4.2 基本遗传算法流程图 262
13.5 遗传算法的特点和应用 262
13.5.1 遗传算法的特点 262
13.5.2 遗传算法的应用 263
13.6 基本遗传算法实现方法 263
13.6.1 数据结构 263
13.6.2 主程序 264
13.6.3 选择运算 264
13.6.4 交叉运算 266
13.6.5 变异运算 267
13.7 旅行商问题 268
13.7.1 排列编码 268
13.7.2 目标函数和适应度函数 269
13.7.3 锦标赛选择 269
13.7.4 顺序交叉 269
13.7.5 交换变异 271
13.7.6 参数选择 272
13.7.7 实例运行结果 272
本章小结 272
习题13 272
第14章 密码算法 274
14.1 信息安全和密码学 274
14.1.1 信息安全 274
14.1.2 什么是密码 274
14.1.3 密码体制 275
14.2 数论初步 276
14.3 背包密码算法 277
14.3.1 背包算法 277
14.3.2 超递增背包 278
14.3.3 由私人密钥产生公开密钥 279
14.3.4 加密方法 279
14.3.5 解密方法 279
14.3.6 背包安全性 280
14.4 RSA算法 280
14.4.1 RSA算法概述 280
14.4.2 RSA的安全性 281
14.5 散列函数和消息认证 282
14.5.1 散列函数 282
14.5.2 散列函数结构 282
14.5.3 消息认证 283
14.6 数字签名 283
14.6.1 RSA数字签名体制 283
14.6.2 需仲裁的数字签名 284
本章小结 284
习题14 284
附录A 专有名词中英文对照表 285
附录B C++程序设计概要 290
参考文献 304
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《分析化学》陈怀侠主编 2019
- 《影响葡萄和葡萄酒中酚类特征的因素分析》朱磊 2019
- 《仪器分析技术 第2版》曹国庆 2018
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《全国普通高等中医药院校药学类专业十三五规划教材 第二轮规划教材 分析化学实验 第2版》池玉梅 2018
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《行测资料分析》李永新主编 2019
- 《药物分析》贡济宇主编 2017
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017