有人可以向我解释以下空间复杂度计算吗?
给定大小为b位的数字流,计算这些的总和 号。
如果到目前为止我们已经看过T数,那么总和最多为T2 ^ b 最多需要O(b + log T)空间。
现在,T2 ^ b必须是一个上限,因为更准确的上限是T(2 ^ b - 1)。
但他们是如何计算出空间上限是O(b + logT)?
答案 0 :(得分:7)
使用 m 位,您可以存储最多(约) 2 m 的数字。所以,从另一个方面来说,如果你知道总和,你需要用一个对数来得到比特数(因此得到空间复杂度)。
此处, log(T 2 b )= b + log(T)。