算法引论:一种创造性方法 a creative approach

2026-07-06 05:18:46

算法引论:一种创造性方法 a creative approach

定 价:¥35.00

作 者:

(美)Udi Manber著;黄林鹏,谢瑾奎,陆首博等译;黄林鹏译

出版社:

电子工业出版社

丛编项:

国外计算机科学教材系列

标 签:

算法

购买这本书可以去

当当网 (¥28.00)

中国图书网 (¥29.80)

ISBN:

9787121016653

出版时间:

2005-09-01

包装:

平装

开本:

26cm

页数:

334

字数:

内容简介

【内容提要】本书是国际算法大师乌迪·曼博(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 符号O3.3 时间与空间复杂度3.4 求和3.5 递推关系3.6 一些有用的证明论据3.7 小结第4章 数据结构简介4.1 引言4.2 基本数据结构4.3 树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章 序列和集合的算法第7章 图算法第8章 几何算法第9章 代数和数值算法第10章 归约第11章 NP完全问题第12章 并行算法部分习题答案参考文献

作者简介

暂缺《算法引论:一种创造性方法 a creative approach》作者简介

图书目录

第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 符号D3.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 堆排序6.4.6 排序问题的下界6.5 顺序统计6.5.1 最大数和最小数6.5.2 查找第足小的数6.6 数据压缩6.7 串匹配6.8 序列比较6.9 概率算法6.9.1 随机数6.9.2 着色问题6.9.3 将拉斯维加斯算法变换成确定性算法6.10 查找众数6.11 三个展现有趣证明方法的问题6.11.1 最长递增序列6.11.2 查找集合中两个最大的元素6.11.3 计算多重集合的模6.12 小结第7章 图算法7.1 引言7.2 欧拉图7.3 图的遍历7.3.1 深度优先搜索7.3.2 广度优先搜索7.4 拓扑排序7.5 单源最短路径7.6 最小代价生成树7.7 全部最短路径7.8 传递闭包7.9 图的分解7.9.1 双连通分支7.9.2 强连通分支7.9.3 利用图分解的例子7.10 配7.10.1 非常稠密图中的完美匹配7.10.2 偶图匹配7.11 网络流量7.12 哈密尔顿旅行7.12.1 反向归纳7.12.2 在非常稠密图中找哈密尔顿回路7.13 小结第8章 几何算法8.1 引言8.2 判定点是否在多边形内部8.3 构造简单多边形8.4 凸包8.4.1 直接方法8.4.2 礼品包裹算法8.4.3 Graham扫描算法8.5 最近点对8.6 水平线段和竖直线段的交点8.7 小结第9章 代数和数值算法9.1 引言9.2 求幂运算9.3 欧几里得算法9.4 多项式乘法9.5 矩阵乘法9.5.1 Winograd算法9.5.2 Strassen算法9.5.3 布尔矩阵9.6 快速傅里叶变换9.7 小结第10章 归约10.1 引言10.2 归约的例子10.2.1 简单字符串匹配问题10.2.2 特殊代表集10.2.3 关于序列比较的归约10.2.4 在无向图中寻找三角形10.3 有关线性规划的归约10.3.1 概述与定义10.3.2 归约到线性规划的例子10.4 下界的归约10.4.1 寻找简单多边形算法复杂度的下界10.4.2 关于矩阵的简单归约10.5 常见的错误10.6 小结第11章 NP完全问题11.1 引言11.2 多项式时间归约11.3 非确定性和Cook定理11.4 NP完全性的证明例子11.4.1 顶点覆盖问题11.4.2 支配集问题11.4.3 3SAT问题11.4.4 团问题11.4.5 3着色问题11.4.6 一般经验11.4.7 更多的NP完全问题11.5 处理NP完全问题的技术11.5.1 回溯法和分枝限界法11.5.2 确保性能的近似算法11.6 小结第12章 并行算法12.1 引言12.2 并行计算模型12.3 共享存储器算法12.3.1 并行加12.3.2 寻找最大数的算法12.3.3 并行前缀问题12.3.4 在链表中查寻秩12.3.5 欧拉遍历技术12.4 连网络上的算法12.4.1 阵列上的排序12.4.2 排序网络12.4.3 在树中查找第k个最小元素12.4.4 网孔上的矩阵乘法12.4.5 超立方体中的路由12.5 脉动计算12.5.1 矩阵与向量相乘12.5.2 卷积问题12.5.3 序列的比较12.6 小结部分习题答案参考文献