在Big O中添加功能时意味着什么,例如O(n + nlogn)。这是否与O(nlogn)不同,因为它是更大的功能?
答案 0 :(得分:0)
使用渐近符号,您实际上是在尝试设置一个您知道算法不会交叉的边界。 Big-O是您的算法将执行的最差的。在您的情况下, O(n + log(n))变成 O(nlog(n)),因为 nlog(n)增长了 n 接近无穷大时最快。这就是为什么你通常被教导你可以打折小功能,至少在测量Big-O时。还有Big-Theta(你的平均运行时间)和Big-Omega(最好的情况)。