Algorithm 递归算法分析
我经常被递归算法稍微难倒,这些算法似乎需要逻辑上的神奇飞跃(由于墨水短缺而产生的大量收缩符号) 我意识到另一种方法是简单地记住所有常用算法的大O符号,但在某一点上,这种方法失败了。例如,我很乐意透露冒泡排序、插入排序、二叉树插入/删除、合并排序和快速排序的性能,但不要让我在脑子里想AVL树或Djikstra最短路径算法的性能 我在哪里可以得到:Algorithm 递归算法分析,algorithm,analysis,Algorithm,Analysis,我经常被递归算法稍微难倒,这些算法似乎需要逻辑上的神奇飞跃(由于墨水短缺而产生的大量收缩符号) 我意识到另一种方法是简单地记住所有常用算法的大O符号,但在某一点上,这种方法失败了。例如,我很乐意透露冒泡排序、插入排序、二叉树插入/删除、合并排序和快速排序的性能,但不要让我在脑子里想AVL树或Djikstra最短路径算法的性能 我在哪里可以得到: 用文字代替大量符号的递归算法分析讨论 练习问题以确认我新获得的理解实际上是正确的 例如: 坏的: 西格玛v e T(1+cv) 可能的“良好”等效物:
以下是解决问题的1个来源:(这解决了上面的2个问题)TopCoders有大量的教程和详尽的解释。你试过了吗
要“正式”回答这个问题 样本问题的来源:
对CS分析的解释:。你应该学会用符号来表达这些想法。它高效、精确,而且是几乎每个人都使用的语言。@Jason:如果你是cs学生或数学和理论的焦点。对于一个好的程序员来说,理解它的意思就足够了。为了让记谱和分析变得舒适(实际上比大多数人都好),我推荐这本好书。仅前两章就足够了(可能还有最后一章),但它写得如此之好,以至于很难不去阅读其他章节。我应该指出,我在最初的帖子中大大低估了自己D我很会处理西格玛、亚历夫·努尔斯等东西。我只是对教材在textbok中的呈现方式有点问题,这是我获得理学学士学位时入门课所要求的(因此我对墨水短缺的评论)。他们关于递归(,)的特别教程虽然很好,不要深入分析的太多细节。我已经复习了教程,必须承认几乎没有关于分析的内容。