数组的空间复杂性



我最近遇到了一个让我感到奇怪的问题。如果我将一个N元素数组存储在一个长度为N的数组中,跨越所有N个索引,该怎么办。举个小例子:

[
[1, 2, 3],
[5, 6, 7],
[8, 9, 10],
]

一个长度为3的数组,在每个索引处都有一个长度3的数组

空间的复杂性是什么?它仍然是O(N(还是已经改变了。

它仍然是O(n),因为空间复杂性分析旨在描述n和空间之间关系的复杂性,它不在乎是否在每个索引处存储3个元素的数组。所使用的空间将高出3倍,但这种关系仍然是线性的。

Big-O表示法描述了一个渐近上界。它代表算法的可扩展性和性能。

简单地说,它给出了算法增长的最坏情况速度

如果您说在每个索引处都存储一个N=index元素的数组,那就不一样了。在这种情况下,它将是O(n^2)

最新更新