本书是国际算法大师乌迪·曼博(Udi Manber)博士撰写的一本享有盛誉的著作。全书共分12章:第1章到第4章为介绍性内容,涉及数学归纳法、算法分析、数据结构等内容;第5章提出了与归纳证明进行类比的算法设计思想;第6章到第9章分别给出了4个领域的算法,如序列和集合的算法、图算法、几何算法、代数和数值算法;第10章涉及归约,也是第11章的序幕,而后者涉及NP完全问题;第12章则介绍了并行算法;最后是部分习题的答案及参考文献。本书的特色有二,旨在提高读者的问题求解能力,使读者能够理解算法设计的过程和思想:一是强调算法设计的创造性过程,注重算法设计背后的创造性思想,而不拘泥于某个具体算法的详细讨论;二是将算法设计类比于定理归纳证明,揭示了算法设计的基本思想和本质。
本书的组织结构清晰且易于理解,强调了创造性,具有浓郁特色,时至今日仍有其巨大的价值,并且适合作为计算机及相关专业算法和高级算法课程的教材。
第1章 引论
第2章 数学归纳法
2.1 引言
2.2 三个简单的例子
2.3 平面内区域的计数
2.4 简单的着色问题
2.5 复杂一些的加法题
2.6 一个简单的不等式
2.7 欧拉公式
2.8 图论中的一个问题
2.9 格雷码
2.10 在图上寻找无重边的路
2.11 数学平均数和几何平均数定理
2.12 循环不变量:将十进制数转换为二进制数
2.13 常见的错误
2.14 小结
第3章 算法分析
3.1 引言
3.2 符号O
3.3 时间与空间复杂度
3.4 习之和
3.5 递推关系
3.5.1 巧妙地猜测
3.5.2 分治关系
3.5.3 涉及全部历史的递推关系
3.6 一些有用的证明论据
3.7 小结
第4章 数据结构简介
4.1 引言
4.2 基本数据结构
4.2.1 元素
4.2.2 数组
4.2.3 记录
4.2.4 链表
4.3 树
4.3.1 树的表示
4.3.2 堆
4.3.3 二叉搜索树
4.3.4 AVL树
4.4 散列
4.5 合并碴找问题
4.6 图
4.7 小结
第5章 基于归纳的算法设计
5.1 引言
5.2 多项式求值
5.3 最大导出子图
5.4 寻找一对一映射
5.5 社会名流问题
5.6 分治算法:轮廓问题
5.7 在二叉树中计算平衡因子
5.8 寻找最大连续子序列
5.9 增强归纳假设
5.10 动态规划:背包问题
5.11 常见的错误
5.12 小结
第6章 序列和集合的算法
6.1 引言
6.2 二叉搜索的几种形式
6.2.1 纯二叉搜索
6.2.2 循环序列的二叉搜索
6.2.3 二叉搜索特殊下标
6.2.4 二叉搜索长度未知的序列
6.2.5 重叠子序列问题
6.2.6 解方程
6.3 内插搜索
6.4 排序
6.4.1 桶排序和基数排序
6.4.2 插入排序和选择排序
6.4.3 归并排序
6.4.4 快速排序
6.4.5 堆排序
……
第7章 图算法
第8章 几何算法
第9章 代数和数值算法
第10章 归约
第11章 NP完全问题
第12章 并行算法
部分习题答案
参考文献
《完美教学:素描基础入门108例》内容简介:每一个人都有绘画的天赋。拿起笔,你也能快速画出生动的画面。这本书从专业的角度告诉我
《我们的第一个十年》内容简介:从校园到职场,抑或到政坛、到商海,曾经朝夕相处的同窗走出了不同的人生轨迹。这里有在基层默默奋
《Scala编程(第5版)》内容简介:本书由直接参与Scala开发的一线人员编写,深入介绍Scala这门结合面向对象和函数式的编程语言的核
《贡布里希的艺术史论》内容简介:贡布里希是20世纪积极推动欧美学术界从艺术的视觉研究转向艺术文化研究的倡导者之一。在20世纪的
《中国汽车史话》内容简介:本书以深邃的历史眼光全面记述中国汽车产业跨越60年发展历程的著作。书中以时间为经线,以历史事件为纬
《一图一例BIM钢筋算量》内容简介:本书共五章,第一章从BIM基础知识讲起,逐渐拓展到BIM在建筑行业领域的应用,使读者对BIM技术有
浪潮之巅:全2册 本书特色 《浪潮之巅(第3版)》不是一本科技产业发展历史集,而是在这个数字时代,一本it人非读不可,而非it人也应该拜读的作品。一个企业的发展...
Atthestartofeverywebdesignproject,theongoingstrugglesreappear.Wewanttodesignhigh...
《徐霞客(中华先贤人物故事汇)【中宣部2022年主题出版重点出版物】》内容简介:徐霞客,明代地理学家、旅行家、文学家。一生志在
本书是Objective-C领域的经典著作,对Objective-C进行了系统而全面的阐述,权威性毋庸置疑。全书共分为四大部分:第一部分全面讲
《短视频,你玩得起吗》内容简介:本书从专业角度教你零基础制作短视频。首先,让你从各个角度深度了解短视频,只有足够了解才能够
单片机实验与实践教程(一)(第2版) 内容简介 本书为《单片机系列教程》之一,较之第1版,在原用汇编语言编程的实验参考程序中,增加了部分C语言编程,使内容更加完...
《软件自动化测试实战解析:基于Python3编程语言》内容简介:本书尽量用生活化的场景来描述编程场景,避免正确但是晦涩的表达,避免
网页设计,是指网页设计者以既有的技术和艺术知识为基础,依照设计目的和要求,自觉地对网页的构成元素进行艺术构思,创造出艺术
地理空间元数据关联网络构建与应用 本书特色 在介绍相关研究背景与意义、国内外研究现状、相关理论方法的基础上,本书阐述面向关联数据的地理空间数据语义关联网络构建方...
《首席组织官》内容简介:个人充分发展、能产生知识进步和技术创新、不作恶,是本书提出的美好组织的三个标准。本书从首席组织管、
《锦绣河山》内容简介:此书主要收录徐铸成先生1984年至1985年来在海内外报刊所刊登的游记和通讯。这一年半来,作者风尘仆仆地跑遍
《国外计算机科学教材系列•Intel汇编语言程序设计(第5版)》全面细致地讲述了汇编语言程序设计的各个方面。从微处理器体系结构、工
如果你可以编写出合格的代码,但是想更进一步、创作出组织良好而且易于理解的代码,并希望成为一名真正的编程专家或提高现有的职
《工地社会》内容简介:在科技水平、现代设备和经济条件都十分有限的集体化时代,大型水利工程何以成为可能?本书以1958~1962年甘