【发布时间】:2012-12-01 14:57:33
【问题描述】:
我想将矩阵初始化为所有 0 值。复杂度是 O(1) 还是 O(n)?
【问题讨论】:
-
除了简单的方法外,另一种方法是存储“默认值变量”。然后,当您第一次访问矩阵中的单元格时,请使用该变量中的值。对于某些矩阵结构,这可能是一个很好的解决方案。这将使初始化 O(1)。
-
你的意思是最初我将一个变量设置为 0 并告诉每个矩阵元素指向该变量?与将它们全部分配给 0 有何不同?
-
考虑一个例子,你的矩阵将是稀疏的,即大多数单元格将具有相同的值。现在,您只需存储与默认值不同的值,而不是保存整个矩阵。显然,实现细节在这里很重要。
标签: algorithm matrix complexity-theory time-complexity multidimensional-array