我对我的讲座数据结构和算法有疑问。
我必须要解决算法如何增长的问题。我不理解O符号之间的区别。我不明白它们之间的区别,例如O(lgn)和O(nlgn)。
我希望有人能帮助我。谢谢
答案 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)。