我有一个算法,我不确定时间和空间的复杂性。 ,
for (i = 1 to n )
do
begin
R(xi) = random(o, xi, r)
i++
end
上述算法的时间和空间复杂度是什么?为什么?
由于
答案 0 :(得分:0)
空间和时间复杂度与输入的大小成正比。假设有一个大小为n
的输入数组,并且您正在处理每个元素一次,那么时间复杂度为O(n)
。如果您使用任何数据结构来存储和处理中间结果,请说另一个大小为n
的数组,那么空间复杂度将为O(n)
。有很多复杂性和复杂性的符号,例如log n, n, n^2, n^3, n!
。
对于您的代码时间复杂度为O(n)
,空间复杂性取决于您是否已定义(O(n)
)R
或将其作为参数传递(O(1)
)。 / p>
请参阅此处了解更多Analysis of algorithms