在算法如何增长的视图中,nlogn和logn之间有什么区别

时间:2016-10-18 17:48:27

标签: algorithm sorting math

我对我的讲座数据结构和算法有疑问。

我必须要解决算法如何增长的问题。我不理解O符号之间的区别。我不明白它们之间的区别,例如O(lgn)和O(nlgn)。

我希望有人能帮助我。谢谢

1 个答案:

答案 0 :(得分:0)

为了比较时间复杂性,您应该能够进行一些数学证明。在您的示例中:

对于每个n> 1,我们通过乘以logn:nlogn> logn,因此nlogn比logn差。理解这一点的一种简单方法是通过比较评论中建议的函数图,甚至尝试一些大的输入来查看渐近行为。例如,对于n = 1000000:

logn(1000000)= 6和1000000log(1000000)= 6000000这个更大。

另请注意,您在大O表示法中计算计数常数,例如4n是O(n),n是O(n),cn + w对于c,w常数是O(n)。