Algorithm 是否有经验法则来评估算法的最佳时间/内存复杂性?

Algorithm 是否有经验法则来评估算法的最佳时间/内存复杂性?,algorithm,time-complexity,space-complexity,Algorithm,Time Complexity,Space Complexity,我在评估问题的复杂性时总是遇到问题。我通常试图找到一个O(n)解,但有时O(nlogn)甚至O(n^2)是最好的 我知道的一个“经验法则”是,如果你有一个排序数组,你需要找到一些东西,它可能可以在O(logn)中完成。我也知道排序不能比O(nlogn)更快。没有经验的程序员有没有类似的规则可以遵循?反复出现的问题你知道问题的复杂性吗 对我来说,最麻烦的是O(n^2),尤其是当我在考试压力下,我浪费时间试图找到一个更好的 我希望这不是一个过于宽泛和基于观点的问题 谢谢 基于非比较的排序需要O(n)

我在评估问题的复杂性时总是遇到问题。我通常试图找到一个O(n)解,但有时O(nlogn)甚至O(n^2)是最好的

我知道的一个“经验法则”是,如果你有一个排序数组,你需要找到一些东西,它可能可以在O(logn)中完成。我也知道排序不能比O(nlogn)更快。没有经验的程序员有没有类似的规则可以遵循?反复出现的问题你知道问题的复杂性吗

对我来说,最麻烦的是O(n^2),尤其是当我在考试压力下,我浪费时间试图找到一个更好的

我希望这不是一个过于宽泛和基于观点的问题


谢谢

基于非比较的排序需要O(n)个时间。基数排序


这本书看起来不错。它包含常用算法的列表,它们的空间和时间复杂性。希望这有帮助。

请参阅此处和此处的常用函数顺序表