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

有帮助吗?

解决方案

算法和数据结构词典是一个相当全面的列表,包含复杂性(Big- O)在算法的描述中。如果您需要更多信息,它将出现在其中一个链接参考文献中,而且维基百科总是作为后备信息。

其他提示

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

尝试“算法简介”由Cormen,Leisersen和Rivest。如果不在那里它可能不值得知道。

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

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

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

算法简介,第二版,又称CLRS(Cormen,Leiserson,Rivest,Stein) ,是我能想到的最接近的事情。

如果失败,请尝试计算机编程艺术,由Knuth。如果它不在那些,你可能需要做一些真正的研究。

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

http://bigocheatsheet.com/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top