算法设计与分析——普通高校本科计算机专业特色教材精选
查看书籍详细信息:
内容简介
算法设计与分析是计算机科学技术中处于核心地位的一门专业基础课,越来越受到重视。本书将计算机经典问题和算法设计技术很好地结合起来,系统地介绍了算法设计技术及其在经典问题中的应用。全书共12章,第1章介绍了算法的基本概念和算法分析方法,第2章从算法的观点介绍了NP完全理论,第3章~第11章分别介绍了蛮力法、分治法、减治法、动态规划法、贪心法、回溯法、分支限界法、概率算法和近似算法等算法设计技术,第12章基于图灵机计算模型介绍了计算复杂性理论。每章均附有一篇阅读材料,以通俗易懂的笔触介绍了算法领域的一些最新研究成果。书中所有算法均给出了伪代码,大部分算法还给出了C++描述,书中所有问题均给出了若干应用实例。
本书内容丰富,深入浅出,结合应用,图例丰富,可作为高等院校计算机专业本科和研究生学习算法设计与分析的教材,也可供工程技术人员和自学读者学习参考。
本书内容丰富,深入浅出,结合应用,图例丰富,可作为高等院校计算机专业本科和研究生学习算法设计与分析的教材,也可供工程技术人员和自学读者学习参考。
目录
第1章 绪论
1.1 算法的基本概念
1.1.1 为什么要学习算法
1.1.2 算法及其重要特性
1.1.3 算法的描述方法
1.1.4 算法设计的一般过程
1.1.5 重要的问题类型
1.2 算法分析
1.2.1 渐进符号
1.2.2 最好、最坏和平均情况
1.2.3 非递归算法的分析
1.2.4 递归算法的分析
1.2.5 算法的后验分析
1.3 实验项目——求最大公约数
阅读材料——人工神经网络与BP算法
习题1
第2章 NP完全理论
2.1 下界
2.1.1 平凡下界
2.1.2 判定树模型
2.1.3 最优算法
2.2 算法的极限
2.2.1 易解问题与难解问题
2.2.2 实际问题难以求解的原因
2.2.3 不可解问题
2.3 P类问题和NP类问题
2.3.1 判定问题
2.3.2 确定性算法与P类问题
2.3.3 非确定性算法与NP类问题
2.4 NP完全问题
2.4.1 问题变换与计算复杂性归约
2.4.2 NP完全问题的定义
2.4.3 基本的NP完全问题
2.4.4 NP完全问题的计算机处理
2.5 实验项目——SAT问题
阅读材料——遗传算法
习题2
第3章 蛮力法
3.1 蛮力法的设计思想
3.2 查找问题中的蛮力法
3.2.1 顺序查找
3.2.2 串匹配问题
3.3 排序问题中的蛮力法
3.3.1 选择排序
3.3.2 起泡排序
3.4 组合问题中的蛮力法
3.4.1 生成排列对象
3.4.2 生成子集
3.4.3 0/1背包问题
3.4.4 任务分配问题
3.5 图问题中的蛮力法
3.5.1 哈密顿回路问题
3.5.2 TSP问题
3.6 几何问题中的蛮力法
3.6.1 最近对问题
3.6.2 凸包问题
3.7 实验项目——串匹配问题
阅读材料——蚁群算法
习题3
第4章 分治法
第5章 减治法
第6章 动态规划法
第7章 贪心法
第8章 回溯法
第9章 分支限界法
第10章 概率算法
第11章 近似算法
第12章 计算复杂性理论
参考文献
1.1 算法的基本概念
1.1.1 为什么要学习算法
1.1.2 算法及其重要特性
1.1.3 算法的描述方法
1.1.4 算法设计的一般过程
1.1.5 重要的问题类型
1.2 算法分析
1.2.1 渐进符号
1.2.2 最好、最坏和平均情况
1.2.3 非递归算法的分析
1.2.4 递归算法的分析
1.2.5 算法的后验分析
1.3 实验项目——求最大公约数
阅读材料——人工神经网络与BP算法
习题1
第2章 NP完全理论
2.1 下界
2.1.1 平凡下界
2.1.2 判定树模型
2.1.3 最优算法
2.2 算法的极限
2.2.1 易解问题与难解问题
2.2.2 实际问题难以求解的原因
2.2.3 不可解问题
2.3 P类问题和NP类问题
2.3.1 判定问题
2.3.2 确定性算法与P类问题
2.3.3 非确定性算法与NP类问题
2.4 NP完全问题
2.4.1 问题变换与计算复杂性归约
2.4.2 NP完全问题的定义
2.4.3 基本的NP完全问题
2.4.4 NP完全问题的计算机处理
2.5 实验项目——SAT问题
阅读材料——遗传算法
习题2
第3章 蛮力法
3.1 蛮力法的设计思想
3.2 查找问题中的蛮力法
3.2.1 顺序查找
3.2.2 串匹配问题
3.3 排序问题中的蛮力法
3.3.1 选择排序
3.3.2 起泡排序
3.4 组合问题中的蛮力法
3.4.1 生成排列对象
3.4.2 生成子集
3.4.3 0/1背包问题
3.4.4 任务分配问题
3.5 图问题中的蛮力法
3.5.1 哈密顿回路问题
3.5.2 TSP问题
3.6 几何问题中的蛮力法
3.6.1 最近对问题
3.6.2 凸包问题
3.7 实验项目——串匹配问题
阅读材料——蚁群算法
习题3
第4章 分治法
第5章 减治法
第6章 动态规划法
第7章 贪心法
第8章 回溯法
第9章 分支限界法
第10章 概率算法
第11章 近似算法
第12章 计算复杂性理论
参考文献