21世纪高等教育计算机规划教材

计算机常用算法与程序设计教程(第2 版)

普通高等教育“十一五”国家级规划教材《计算机常用算法与程序设计教程》结合高校计算机教学实际与应用需求,
分享 推荐 1 收藏 29 阅读 2.5K
杨克昌 (作者) 978-7-115-45591-8

关于本书的内容有任何问题,请联系 张孟玮

本书突出以下4个注重。
(1) 注重常用算法的选取与组织。
(2) 注重典型案例的精选与提炼。
(3) 注重算法设计与程序实现的紧密结合。
(4) 注重算法改进与程序优化。

内容摘要

本书遵循“精选案例,深入浅出,面向设计,注重能力培养”的要求,系统讲述枚举、递推、递归、回溯法、动态规划、贪心算法、分支限界法与模拟等常用算法及其应用。精选各算法设计求解的典型案例,从案例提出到算法设计、从程序实现到复杂度分析,环环相扣,融为一体,力求算法理论与实践应用相结合、算法与程序相统一,突出算法在程序设计中的核心地位与引导作用。
书中所有案例给出算法设计要点与完整的C程序代码,并给出程序运行示例(均在Visual C++ 6.0编译通过)与算法分析。为方便教学,每章都附有习题,同时推出与本书配套的课件供教学选用。书中所有源代码、部分习题解答提示与配套课件均可从人邮教育社区(http://www.ryjiaoyu.com)下载。
本书可作为高等院校计算机相关专业“算法设计与分析”和“程序设计基础与应用”等课程的教材,也可供软件设计人员和程序设计爱好者学习参考。

目录

第 1章 算法与程序设计概述 1
1.1 算法概念与描述 1
1.1.1 算法概念 1
1.1.2 算法描述 3
1.2 算法复杂性分析 6
1.2.1 时间复杂度 7
1.2.2 空间复杂度 12
1.3 算法设计与分析示例 12
1.3.1 **大公约数 12
1.3.2 同码小数和 13
1.3.3 平方根不等式 15
1.4 算法与程序设计 16
1.4.1 算法与程序 16
1.4.2 结构化程序设计 20
习题1 22
第 2章 枚举 24
2.1 枚举概述 24
2.2 求和与统计 26
2.2.1 求代数和 26
2.2.2 倍和数探索 26
2.3 整数搜索 31
2.3.1 探求p-完全数 31
2.3.2 搜索合数世纪 32
2.4 解方程与不等式 33
2.4.1 解佩尔方程 33
2.4.2 解分式不等式 35
2.5 分解与重组 35
2.5.1 质因数分解 36
2.5.2 探索双和3元2组 38
2.6 运算数式构建 39
2.6.1 探索综合运算式 39
2.6.2 构建对称数式 42
2.7 数阵与图形 46
2.7.1 探求3阶素数幻方 46
2.7.2 构建和积三角形 49
2.8 枚举设计优化 51
2.8.1 优化枚举结构 51
2.8.2 精简枚举参数 52
习题2 54
第3章 递推 56
3.1 递推概述 56
3.2 超级素数搜索 58
3.3 裴波那契序列与卢卡斯序列 62
3.4 多关系递推 63
3.4.1 双幂序列 63
3.4.2 双关系递推数列 65
3.4.3 威佐夫数对序列 67
3.5 数阵与网格 68
3.5.1 构建杨辉三角 68
3.5.2 方格网交通线路 70
3.6 水手分椰子 71
3.6.1 5个水手分椰子 72
3.6.2 探求n个水手分椰子 75
3.7 整币兑零 76
3.7.1 特定零币兑零 76
3.7.2 一般零币兑零 78
3.8 递推小结 80
习题3 81
第4章 递归 83
4.1 递归概述 83
4.2 购票排队 86
4.3 汉诺塔游戏 87
4.3.1 计算移动次数 88
4.3.2 展示移动过程 89
4.4 双转向旋转方阵 90
4.5 分区交换排序与选择 93
4.5.1 分区交换排序 93
4.5.2 分区交换选择 96
4.6 排列组合实现 97
4.6.1 实现排列A(n,m) 98
4.6.2 实现组合C(n,m) 99
4.7 整数拆分 102
4.7.1 零数取自指定区间 102
4.7.2 零数取自指定整数集 104
4.8 递归小结 105
习题4 108
第5章 回溯法 110
5.1 回溯法概述 110
5.1.1 回溯概念 110
5.1.2 回溯描述 111
5.2 桥本分数式 114
5.2.1 9数字桥本分数式 115
5.2.2 探求10数字分数式 119
5.3 素数和环 120
5.4 直尺与数珠 124
5.4.1 神奇古尺 124
5.4.2 数码串珠 126
5.5 错位排列探索 128
5.5.1 伯努利装错信封问题 128
5.5.2 特殊错位排列 130
5.6 情侣拍照排列 132
5.6.1 逐位回溯 132
5.6.2 成对回溯 134
5.7 回溯法小结 136
习题5 138
第6章 动态规划 139
6.1 动态规划概述 139
6.1.1 动态规划概念 139
6.1.2 动态规划设计规范 141
6.2 0-1背包问题 141
6.3 **小子段和 145
6.3.1 序列**小子段 145
6.3.2 环序列**小子段 147
6.4 **优插入乘号 151
6.5 **长子序列探索 153
6.5.1 **长非降子序列 153
6.5.2 **长公共子序列 156
6.6 凸形的三角形划分 158
6.7 动态规划小结 161
习题6 161
第7章 贪心算法 163
7.1 贪心算法概述 163
7.2 删数字**值问题 164
7.3 可拆背包问题 167
7.4 构建埃及分数式 168
7.4.1 优先选择**小分母 169
7.4.2 扩展分母选择范围 170
7.5 数列压缩问题 172
7.5.1 数列压缩的**大值 172
7.5.2 数列压缩的极差 174
7.6 哈夫曼树与编码 176
7.6.1 构建哈夫曼树 176
7.6.2 实现哈夫曼编码 179
7.7 贪心算法小结 182
习题7 183
第8章 分支限界法 185
8.1 分支限界法概述 185
8.2 搜索迷宫**短通道 187
8.2.1 矩阵迷宫 187
8.2.2 三角迷宫 191
8.3 装载问题 194
8.3.1 回溯设计 194
8.3.2 分支限界设计 196
8.4 0-1背包问题 198
8.5 8数码游戏 201
8.5.1 移动常规设计 201
8.5.2 数组优化设计 206
8.6 分支限界法小结 209
习题8 210
第9章 模拟 211
9.1 模拟概述 211
9.1.1 模拟概念 211
9.1.2 竖式乘除模拟 214
9.2 探求乘数 216
9.2.1 积为“1”构成 216
9.2.2 积为指定数构成 217
9.3 尾数前移问题 218
9.3.1 尾数限一个数字 218
9.3.2 尾数为多位数 220
9.4 阶乘幂与排列组合计算 222
9.5 圆周率高精度计算 223
9.6 模拟发扑克牌 226
9.7 泊松分酒问题 228
9.8 模拟小结 231
习题9 232
第 10章 算法综合应用与优化 233
10.1 幂积序列 233
10.1.1 双幂积探索 233
10.1.2 探讨3幂积序列 237
10.2 指定码串积 240
10.2.1 探求0-1串积 240
10.2.2 指定2码串积 243
10.2.3 指定多码串积 245
10.3 皇后问题 247
10.3.1 高斯8后问题 247
10.3.2 探索n皇后问题 249
10.3.3 皇后全控棋盘 252
10.4 马步遍历与哈密顿圈 255
10.4.1 马步遍历探索 255
10.4.2 **长马步路径 258
10.4.3 马步型哈密顿圈 262
10.5 综合应用小结 266
习题10 267
附录A 在Visual C++6.0环境下运行C程序方法简介 268
附录B C语言常用库函数 272
参考文献 276

读者评论

  • 资源很全,给个大大的赞♥

    Young Yang发表于 2018/1/19 10:52:56

我要评论

作者介绍

杨克昌:湖南理工学院计算机学院教授,长年从事教学改革并取得校级与省级教学成果奖多项,对本科有关算法与程序设计的教学目标、教学要求与学生的实际非常熟悉,教学经验丰富。编写过教材:C语言程序设计、计算机程序设计经典题解、趣味C程序设计集锦、趣味Visual FoxPro程序设计集锦、至美—C程序设计、计算机常用算法与程序设计教程。

推荐用户

同系列书

  • Java Web程序设计教程

    陈沛强 谷灵康 金京犬

    本书作为Java Web程序设计的大学教程,对Java EE编程技术进行了系统全面的介绍。全书共分14章。首先...

    ¥48.00
  • C++程序设计——思想与方法 慕课版(第3版)

    翁惠玉 俞勇

    本书以C++语言为环境,重点讲授程序设计的思想和方法,包括过程化的程序设计和面向对象的程序设计,且本书非常强调...

    ¥49.80
  • 网页设计与制作(附微课视频 第2版)

    雷伟军

    本书依据教育部高等学校计算机基础课程教学指导委员会提出的《关于进一步加强高校计算机基础教学的意见》中有关“网页...

    ¥45.00
  • 数据结构与算法分析(C++语言版)

    张琨 张宏 朱保平

    本书共分10章,主要包括第1章绪论,第2章线性表,第3章栈和队列,第4章串,第5章数组和广义表,第6章 树和二...

    ¥45.00
  • 多媒体技术及应用

    李小英 谷长龙 段伟 蔡益红

    本书全面系统地介绍了多媒体技术的基础知识与应用软件的使用。全书共5章。第1章多媒体技术概论讲述了多媒体技术的基...

    ¥39.00

相关图书

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