【发布时间】:2017-02-14 23:46:53
【问题描述】:
研究大 O 表示法,我理解 O(log n) 作为二分查找和 O(n log n) 作为快速排序的概念。
谁能通俗地说一下runtime这两者之间的主要区别是什么?为什么会这样?
它们在直觉上似乎具有相似的相关性
【问题讨论】:
-
他们完全不同:bigocheatsheet.com
-
既然
n log n和log n是不同的函数,增长得更快,为什么它们应该一样呢?n有很大的不同:如果log是基数 2 和n = 1000,n log n是9965.8但log n只是9.97。 -
我不知道反对票。 Stack Overflow 上的许多人似乎比过去缺乏耐心。
-
这个问题绝对不会太宽泛。这是一个有具体答案的具体问题。这个问题的结束是不公正的。
-
也许“太宽泛”在这里是错误的标记,但是这个问题仍然有资格被关闭:与编程没有直接联系并且明显缺乏研究的 CS 问题(研究 bigO 意味着:阅读定义!; log n -> binary-search + n log n -> quick sort 的映射不仅是错误的,如果它是正确的也是危险的,如果理解 bigO 表示法是目标)。 (我也希望已经有数百个类似的问题)