
这本书结合了我的三大爱好:算法、python编程及诠释事物。对我来说,这三项都是美学问题——找出让事情尽善尽美的方法。这就需要我们首先去发现相关事物的精华所在,然后精雕细琢,使其发光发亮,或至少比原先要闪亮一些。当然,由于某些材料表面的杂质太多,加工的结果可能会有些不尽人意。但幸运的是,本书中所涉及的内容大多都是现成品,因为我所写的都是一些久负盛名的算法及其论证,采用的也是最受欢迎的编程语言之一。至于在诠释事物方面,我一直在努力试着让事情变得尽可能显而易见一些。但即便如此,我也肯定还有许多失败的地方。如果读者有任何对本书的改进建议,我都非常乐意听取。没准这其中的某些意见会成就本书将来的修订版呢!但就目前来说,我还希望读者能享受这本书,用你们的洞察力去重新发现一些玩法,并且去实际运行它们。如果可能的话,用它制造出一些“可怕”的东西也行。总之,想怎么玩就怎么玩吧!
[第1章 引言
1.1.1 本书将主要涉及以下内容
1.1.2 本书还将简单或部分涉及以下内容
1.1.3 本书不会涉足以下领域
<a href="https://yq.aliyun.com/articles/93673/">1.2 为什么要读这本书</a>
<a href="https://yq.aliyun.com/articles/93677/">1.3 一些准备工作</a>
<a href="https://yq.aliyun.com/articles/93686/">1.4 本书主要内容</a>
<a href="https://yq.aliyun.com/articles/93689/">1.5 本章小结</a>
<a href="https://yq.aliyun.com/articles/93691/">1.6 如果您感兴趣</a>
<a href="https://yq.aliyun.com/articles/93694/">1.7 练习题</a>
<a href="https://yq.aliyun.com/articles/93700/">1.8 参考资料</a>
[第2章 基础知识
<a href="https://yq.aliyun.com/articles/93745/">2.2 渐近记法</a>
2.2.1 我看不懂这些希腊文
2.2.2 交通规则
2.2.3 让我们拿渐近性问题练练吧
2.2.4 三种重要情况
2.2.5 实证式算法评估
<a href="https://yq.aliyun.com/articles/93784/">2.3 图与树的实现</a>
2.3.1 邻接列表及其类似结构
2.3.2 邻接矩阵
2.3.3 树的实现
2.3.4 多种表示法
<a href="https://yq.aliyun.com/articles/93827/">2.4 请提防黑盒子</a>
2.4.1 隐性平方级操作
2.4.2 浮点运算的麻烦
<a href="https://yq.aliyun.com/articles/93829/">2.5 本章小结</a>
<a href="https://yq.aliyun.com/articles/93833/">2.6 如果您感兴趣</a>
<a href="https://yq.aliyun.com/articles/93837/">2.7 练习题</a>
<a href="https://yq.aliyun.com/articles/93842/">2.8 参考资料</a>
第3章 计数初步
第4章 归纳、递归及归简
第5章 遍历:算法学中的万能钥匙
第6章 分解、合并、解决
第7章 贪心有理吗?请证明
第8章 复杂依赖及其记忆体化
第9章 dijkstra及其朋友们从a到b的旅程
第10章 匹配、切割及流量
第11章 困难问题及其(有限)稀释
附录a 猛踩油门!令python加速
附录b 一些著名问题与算法
附录c 图论基础
附录d 习题提示