【发布时间】:2016-10-27 20:33:58
【问题描述】:
如果对于所有 n,O(1) 比 O(n) 快,我何时会选择 O(n) 算法而不是 O(1) 算法的示例
【问题讨论】:
-
是的,正是那个时候。
标签: algorithm runtime big-o compile-time-constant
如果对于所有 n,O(1) 比 O(n) 快,我何时会选择 O(n) 算法而不是 O(1) 算法的示例
【问题讨论】:
标签: algorithm runtime big-o compile-time-constant
通常,真实数据适用于时间复杂度更差的算法。例如,在 O(n^2) 时间内运行的冒泡排序通常在几乎排序的数据上更快。通常,常数因素可能会使算法太慢而无法实用。请记住,big-O 处理的是在极限情况下更有效的事情,而不是在直接情况下。对于 n
【讨论】:
for all of n 的某些部分必须选择忽略。
一个例子是 O(1) 算法会消耗大量内存,而 O(n) 算法则不会。与性能相比,内存对您来说更重要。
【讨论】: