算法导论第四版更新了什么?
全局更新
- 140道新的习题,22个新问题,以及其他习题和问题的版本更新
- 整本书增加了颜色来改善阅读体验,对定义的条款和伪代码注释做了高亮
- 写作风格更清晰、更有个性、更中性
- 代码用Python替换了原来的Java
组织结构更新
3个新章节:
- 第25章,二分图匹配(Matchings in Bipartite Graphs)
- 第27章,在线算法
- 第33章,机器学习算法
转移到线上的内容:
- 第19章,斐波那契堆
- 第20章,van emde boas tree(vEB树)
- 第33章,计算几何
- 4.1小节,最大子数组问题(maximum-subarray problem)
- 10.3小节, 实现指针和对象
- 11.5小节,完美哈希
- 12.4小节,随机生成二叉搜索树
- 16.4,16.5小节,拟阵(matroid)
- 26.4,26.5小节,最大流推进-重标号算法(push-relabel algorithms for maximum flow)
- 29.3,29.5小节,线性规划的单纯形算法(simplex algorithm for linear programming)
- 部分30.0小节,迭代快速傅里叶变换方法
- 31.9小节,整数分解
章节更新
- 第三章,函数的增长:重命名了“描述运行时间”,在形式化定义之前增加一个小节概述渐近符号
- 第四章,分治:做了大幅修改来提升数学基础,使更加完善和直观
- 引入了算法递归,并更严格地解决了递归中忽略上限和下限的问题
- 主定理的第二种情况合并了对数因子,并提供了“连续”版本主定理的严格证明
- 增加了强大和通用的Akra-Bazzi方法(无证明)
- 第九章,中位数和顺序统计学:确定性顺序统计算法有所不同,对随机和确定性顺序统计算法的分析进行了改进
- 第十章,基础数据结构:10.1小节讨论了存储数组和矩阵的方法
- 第十一章,哈希表:包括哈希函数的现代处理,并强调当底层硬件实现的缓存机制更有利于局部搜索时,线性探测是解决冲突的有效方法
- 第十五章,贪心算法:替换了关于拟阵的部分,将第三版中关于离线缓存的问题转换为一个完整的小节
- 第十六章,均摊分析:第16.4节现在更直观地解释了用于分析表倍增和减半的潜在函数
- 第十七章,数据结构的扩充,从第三部分转移到第四部分,更能反映作者的观点,该部分内容超越了基本材料
- 【新】第二十五章,二分图匹配:介绍了寻找最大基数匹配的算法,稳定婚姻问题 ,最大权重匹配问题(也称为“分配问题”)
- 第二十六章,并行算法:更新了现代术语,包括章节名字
- 【新】第二十七章,在线算法:介绍了几个在线算法的例子,包括确定在走楼梯之前等待电梯的时间,通过move-to-front启发式来维护一个链表,以及评估缓存的替换策略
- 第二十九章,线性规划:去掉了单纯形算法的详细介绍。 这一章现在集中在如何将问题建模为线性规划,以及线性规划的对偶性质
- 第三十二章,字符串匹配:第32.5小节增加了字符串匹配中简单而强大的后缀数组结构
- 【新】第三十三章,机器学习算法:介绍了机器学习中使用的几种基本方法:聚类算法将相似的项分组在一起,加权多数(weighted-majority)算法,以及梯度下降来寻找函数的最小值
- 第三十四章,NP完全问题:第34.5.6节总结了多项式时间约简的策略,表明问题是np难的
算法导论第四版更新了什么?相关推荐
- 《算法》(第四版)------------图
<算法>(第四版)------------图 最小生成树 概念 最小生成树:含有图中所有顶点的 无环 连通 子图. 切分:将图所有顶点氛围两个非空且不重叠的两个集合.横切边是一条连接两个属 ...
- IDEA配置java《算法》第四版环境(耗时6小时,总算配置成功了,希望能给大家一点帮助)
0.前言 最近在学java语言,然后想用java语言来学习算法,在网上听说看<算法>第四版学习java算法不错,于是就去下载了<算法>电子书来啃 今天看到了用java java ...
- 给出TREE_INSERT过程的非递归版本(算法导论第三版12.3-1)
给出TREE_INSERT过程的非递归版本(算法导论第三版12.3-1) template<typename T> void insert_recursive(BinaryTree< ...
- 写出TREE-PREDECESSOR的伪代码(算法导论第三版12.2-3)
写出TREE-PREDECESSOR的伪代码(算法导论第三版12.2-3) TREE-PREDECESSOR(x)if x.left != NILreturn TREE-MAXIMUM(x.left) ...
- 写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2)
写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2) template<typename T> BinaryTreeNode<T>* ...
- 二叉树的中序遍历非递归方法(算法导论第三版12.1-3)
二叉树的中序遍历非递归方法(算法导论第三版12.1-3) 1⃣️用栈实现 template<typename T> void inorder_tree_walk_non_recursion ...
- 二叉树的遍历(算法导论第三版12.1-4)(包含先序遍历,后序遍历和中序遍历)
二叉树的遍历(算法导论第三版12.1-4) 1⃣️先序遍历 template<typename T> void preorder_tree_wald(BinaryTreeNode<T ...
- 算法导论第三版第十一章11.1-4
算法导论第三版第十一章11.1-4 我们希望在一个非常大的数组上,通过利用直接寻址的方式来实现一个字典.开始时,该数组中可能包含一些无用信息,但要堆整个数组进行初始化时不太实际的,因为该数组的规模太大 ...
- 利用链表实现可合并堆(算法导论第三版思考题10-2)
利用链表实现可合并堆(算法导论第三版思考题10-2) a 链表已排序 创建一个空堆: Θ(1) 插入:Θ(n),插入后依然保持排序 最小值:Θ(1),第一位便是 取最小值:Θ(1) 合并:Θ(n),可 ...
- 非递归遍历二叉树(算法导论第三版第十章10.4-5)
非递归遍历二叉树(算法导论第三版第十章10.4-5) template<typename T> void TraverseBinaryTreeNonRecursive(BinaryTree ...
最新文章
- lua-resty-iputils, 在Openresty中,用于处理IP地址的实用程序函数
- 使用 .NET 升级助手将.NET Framework应用迁移到.NET 5
- 转:如何在 LoadRunner 脚本中做关联 (Correlation)
- 【opencv学习】【Harris角点检测】
- 第三只眼使用局域网版本还是网络版好_让汽车的“第三只眼”更聪明更安全
- html前端开发作品,Web前端开发(HTML5+CSS3)
- 《JavaScript设计模式》读书笔记模板方法模式
- android 渠道商,【华为怒斥渠道商】
- 拉普拉斯变换的本质意义(好文!通俗易懂)
- html base64在线解码,HTML5原生支持Base64编码解码
- BI 报表工具如何与 springBoot 框架集成
- BH1750 STM32 驱动程序
- Kubernetes详解
- 推荐一些亲测实用的小软件
- HBaseCon亚洲2018峰会盛大开幕 阿里带你洞悉HBase大数据生态最新发展和行业实践
- python可以ps吗_python-PS图片
- 手机变速齿轮_变速齿轮神途官方版下载-变速齿轮神途手游官方版下载 v2.20190828-114手机乐园...
- WSN(3)(1):第三章 无线传感网络的通信与组网
- 网络 路由器基本协议配置
- matlab adaboost工具箱,GML_AdaBoost_Matlab_Toolbox
热门文章
- 中国工业互联网相关政策汇总分析:“十四五”系列规划助力工业互联网创新融合发展[图]
- wwwscan目录扫描器的逆向分析
- c语言课程设计找出肇事车牌,C语言课程设计参考题目.doc
- 进阶之路 | 奇妙的Activity之旅
- MT7621AT,MT7620A,WIFI6,MT7975D+MT7915DAN
- fastdfs 集群配置
- er studio mysql逆向生成
- 【python】chardet函数用法
- PlantUML - 程序员必备绘图工具,不只是UML
- Python移植MATLAB的巴特沃斯滤波器,椭圆滤波器