以大O表示法计算算术平均值的复杂度是多少?还请简短说明如何获得结果。
答案 0 :(得分:3)
假设您是在这里指均值:https://en.wikipedia.org/wiki/Arithmetic_mean
它将始终为O(N)。原因?简而言之,计算均值包括对集合中所有元素进行求和,然后将其除以N。现在,如果您采用最简单的方法并按照说明进行操作,则必须遍历集合中的每个元素。
现在,让我们假设您对此有所了解,并对此进行了分而治之,这意味着您将集合分成了较小的集合,然后用均值表示,然后取calculated means
的均值。在这种情况下,可能是O(N / 2)+ O(N / 2)+ O(LogN)[这是计算均值的成本] = O(N + LogN)。在这种情况下,执行简单的均值会便宜O(N)。
希望这是有道理的。