Time complexity 时间复杂性的乘法?
我知道,当你将两个时间复杂度相乘时,你只需像往常一样将它们相乘,例如,Time complexity 时间复杂性的乘法?,time-complexity,Time Complexity,我知道,当你将两个时间复杂度相乘时,你只需像往常一样将它们相乘,例如,n log n的时间复杂度乘以n的时间复杂度就会得到(n^2)log n 但是边界在哪里起作用呢?那么如果nlogn是上界,n也是上界,那么它们的乘积是什么样的界?对于下限上限和紧限的其他组合又会是什么呢?(例如,上限x紧绑定、上限x低绑定和紧绑定x低绑定。) 谢谢您的帮助。这是一个纯数学问题: f(x)是O(g(x))当且仅当存在M,x0使得|f(x)|x0。你会在最基本的复杂性书籍中看到这一点 因此,假设f(x)是O(f(
n log n
的时间复杂度乘以n
的时间复杂度就会得到(n^2)log n
但是边界在哪里起作用呢?那么如果nlogn
是上界,n
也是上界,那么它们的乘积是什么样的界?对于下限上限和紧限的其他组合又会是什么呢?(例如,上限x紧绑定、上限x低绑定和紧绑定x低绑定。)
谢谢您的帮助。这是一个纯数学问题:
f(x)
是O(g(x))
当且仅当存在M
,x0
使得|f(x)|x0
。你会在最基本的复杂性书籍中看到这一点
因此,假设f(x)
是O(f(x))
和g(x)
是O(g(x))
。然后是|f(x)|x0F
和|g(x)|x0G
|f(x)*g(x)|=|f(x)|*|g(x)| max(x0F,x0G)
sof(x)*g(x)
isO(f(x)*g(x))
复杂度会成倍增加(写入M=M\f*M\u g
和x0=max(x0F,x0G)
如果n logn是上界,n也是上界,那么它们的乘积是什么样的界
上限。查看任何好的教科书答案进行形式化分析;将这两个上限相乘的直观含义是“如果您必须执行最多n个lgn操作,每个操作的成本最多为n,那么您执行的工作最多为n²lgn”
上界×紧界
紧界既是上界又是下界,所以这是上界
紧束缚×低束缚
。。。根据同样的推理,这是一个下限
上界×下界
没有一般规则。假设您至少执行了n²操作,最多执行n次。这可能根本不起作用,也可能是一个指数量,或者更大的数值。我猜同一类型的复杂性(上限和上限或下限和下限)会像第一个示例一样成倍增加。上界X下界听起来像是给我加上了苹果和橘子。是的,我试着在我的脑海中思考不同边界的时间复杂性的乘法,但我就是不能理解它。哈哈。我怎么解释不同边界的时间复杂性的乘法呢“我们将为我们的外部函数考虑一个最好的情况,然后我们将考虑我们内部函数的最坏情况”,这将在最好和最坏之间产生一些不太有用的复杂性。如果你想要平均的复杂性,我建议坚持你的平均复杂性。(这是一个复杂的类别)。要知道,我不能对这些发誓!这只是我最好的猜测!(:是的,我完全同意。不幸的是,考试中会有人问我这类问题。我现在很困惑。记住课本是你的朋友!如果课本与我的建议相矛盾,我肯定会选择课本!谢谢你的时间和努力,我选择了另一个答案,因为我理解它更好。