哪种方法更好:空间与时间的复杂性

时间:2015-04-08 18:03:43

标签: performance algorithm time-complexity space-complexity

我有一个算法(非常基本),我有两个解决方案,两个的复杂性是: 方法1:

Space complexity: O(n)
Time Complexity : O(n)

方法2:

Space complexity: O(1)
Time Complexity : O(nlogn)

选择哪种方法,我正在寻找这种情况下的最佳实践。

编辑1 :我的输入无限大。

1 个答案:

答案 0 :(得分:1)

算法评估肯定取决于问题。

例如,如果您的n < 2^30 {<1}}您的算法将使用剩余的2^30位消耗,那么方法1 可能会很棒。

方法2 将更具可扩展性,因为它不需要任何主要的额外内存。对于某人来说,等待一段时间(nlogn优于n^2)比使应该工作的系统崩溃更好。

所以,这一切都取决于你的要求。