算法设计与分析(第2版) / 普通高校本科计算机专业特色教材精选·算法与程序设计
作者: 王红梅、胡明
出版时间:2014年8月
出版社:清华大学出版社
- 清华大学出版社
- 9787302307525
- 2-4
- 158097
- 16开
- 2014年8月
- 工学
- 计算机科学与技术
- TP301.6
- 计算机
- 本专科、高职高专
《普通高校本科计算机专业特色教材精选·算法与程序设计:算法设计与分析(第2版)》将经典问题和算法设计技术很好地结合起来,系统地介绍了算法设计技术及其在经典问题中的应用。全书共分四部分:第一部分是基础知识,包括算法设计基础和算法分析基础;第二部分是基本的算法设计技术,包括蛮力法、分治法、减治法、动态规划法和贪心法;第三部分是基于搜索的算法设计技术,包括回溯法和分支限界法;第四部分是计算的限制,介绍了问题的复杂性、近似算法和概率算法。所有问题都用伪代码给出了算法描述,大多数问题都给出了C 语言的算法实现,并且所有程序均在VC#6.0环境下调试通过。每章均附有一篇阅读材料,以通俗易懂的方式介绍了算法领域的一些*研究成果。
《普通高校本科计算机专业特色教材精选·算法与程序设计:算法设计与分析(第2版)》内容丰富,深入浅、出,结合应用,图例丰富,可作为高等院校计算机专业本科和研究生学习算法设计与分析的教材,也可供工程技术人员和自学者学习参考。
第1章 算法设计基础
1.1 算法的基本概念
1.1.1 算法及其重要特性
1.1.2 算法的描述方法
1.1.3 算法设计的一般过程
1.2 为什么要学习和研究算法
1.2.1 算法在问题求解中的地位
1.2.2 算法训练能够提高计算思维能力
1.2.3 算法研究是推动计算机技术发展的关键
1.3 重要的问题类型
1.3.1 查找问题
1.3.2 排序问题
1.3.3 图问题
1.3.4 组合问题
1.3.5 几何问题
阅读材料——算法研究与图灵奖
习题1
第2章 算法分析基础
2.1 算法的时间复杂性分析
2.1.1 输入规模与基本语句
2.1.2 算法的渐进分析
2.1.3 最好、最坏和平均情况
2.1.4 非递归算法的时间复杂性分析
2.1.5 递归算法的时间复杂性分析
2.2 算法的空间复杂性分析
2.3 最优算法
2. 3.1 问题的计算复杂性下界
2.3.2 平凡下界
2.3.3 判定树模型
阅读材料——算法的实验分析
习题2
第二部分 基本的算法设计技术
第3章 蛮力法
3.1 概述
3.1.1 蛮力法的设计思想
3.1.2一个简单的例子百元买百鸡问题
3.2 查找问题中的蛮力法
3.2.1 顺序查找
3.2.2 串匹配问题
3.3 排序问题中的蛮力法
3. 3.1 选择排序
3.3.2 起泡排序
3.4 组合问题中的蛮力法
3.4.1 0/1背包问题
3.4.2 任务分配问题
3.5 图问题中的蛮力法
3.5.1 哈密顿回路问题
3.5.2 TSP问题
3.6 几何问题中的蛮力法
3.6.1 最近对问题
3.6.2 凸包问题
阅读材料——KMP算法中next值的计算
习题3
第4章 分治法
4.1 概述
4.1.1 分治法的设计思想
4.1.2一个简单的例子数字旋转方阵
4.2 排序问题中的分治法
4.2.1 归并排序
4.2.2 快速排序
……
第三部分 基于搜索的算法设计技术
第四部分 计算的限制
附录A 名词索引
参考文献