对于一切,是否有Big-O表示法的主列表?

时间:2008-10-07 21:28:01

标签: algorithm data-structures big-o

是否有针对所有内容的Big-O表示法的主列表?数据结构,算法,对每个,平均情况,最坏情况等执行的操作

6 个答案:

答案 0 :(得分:8)

Dictionary of Algorithms and Data Structures是一个相当全面的列表,包括算法描述中的复杂性(Big-O)。如果您需要更多信息,它将出现在其中一个链接参考文献中,而且维基百科总是作为后备信息。

答案 1 :(得分:6)

Cormen book更多的是教你如何证明给定算法的Big-O是什么,而不是将算法记忆化为其Big-O性能。前者比后者更有价值,需要您的投资。

答案 2 :(得分:2)

尝试Cormen,Leisersen和Rivest的“Introduction to Algorithms”。如果不在那里它可能不值得知道。

答案 3 :(得分:2)

在c ++中,STL标准由算法的Big-O特性以及空间要求定义。这样你就可以在STL的竞争实现之间切换,并且仍然知道你的程序具有相同的运行时特性。 特别好的STL实现甚至可以使特定类型的特殊情况列表优于标准要求。

它使得为特定问题选择正确的迭代器或列表类型变得容易,因为您可以轻松地权衡空间消耗和速度。

Ofcourse Big-O只是一个引导线,因为所有常量都被删除了。如果算法在k * O(n)中运行,它将被归类为O(n),但如果k足够高,则对于某些n和m值,它可能比O(n ^ 2)更差。

答案 4 :(得分:0)

Introduction to Algorithms, Second Edition,又称CLRS(Cormen,Leiserson,Rivest,Stein),是我能想到的最接近的东西。

如果失败,请尝试由Knuth The Art of Computer Programming。如果它不在那些,你可能需要做一些真正的研究。

答案 5 :(得分:0)

向谷歌提出这个问题的任何人。

http://bigocheatsheet.com/

相关问题