algorithm - 什么时候能够计算增长顺序很重要?

标签 algorithm clrs

我正在阅读 CLRS 的第 2 章和第 3 章,并且经常卡住,尤其是在每章末尾提供的问题中,我想知道是否值得为此付出这么多努力。我无法理解像这样的在线解决方案:http://clrs.skanev.com/02/problems/01.html

我听说这本书是大学CS课最受欢迎的教科书之一,但是人们会跳过复杂的部分而只记住重要的东西吗,比如插入排序有这种增长顺序,归并排序有那种增长顺序,继续吗?

仅仅熟悉许多有用的算法就足以像拥有 CS 学位的人对计算机科学的一般理解一样多吗?

最佳答案

理解与内存无关。这是关于能够应用知识来解决问题。与大多数现实生活中的问题相比,教科书上的问题非常简单。所以,跳过这些仅仅意味着你根本没有在学习,而且你肯定无法在现实生活中应用它们。你在内存,但你不能使用你记住的东西。

TL;DR:能够运用知识的证明是解决问题的能力,教科书上的问题很简单 少不了另一个。

‡ Knuth 的文章是一个明显的异常(exception):他还提供了一些边缘棘手的问题,以及介于两者之间的所有问题:)

关于algorithm - 什么时候能够计算增长顺序很重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34658066/

相关文章:

algorithm - 对 Cormen 书中的 Floyd Warshall 例子感到困惑

java - 获取数组最大 3 个元素的最有效方法

c++ - push-relabel算法的实现

java - 单连通有向图

algorithm - 在 CLRS 中的 DFS 和 BFS 实现中使用灰色的目的是什么?

algorithm - 从最大堆中删除节点 A[i]

algorithm - Graph - 有向图的平方

java - 如何证明代码中递归 "search"算法的正确性?

ruby - 幂和递归算法

java - QuickSort Java 代码给出错误超过时间限制