假设我们有一个大小为S的数组,并且数组元素的总和为R。以下代码的时间复杂度是多少?谢谢。
T = 0;
for(int i=0; i<S; i++)
for(int j=0; j<A[i]; j++)
T++;
时间复杂度将为n ^ 2,因为有两个循环。这里N是一个非常大的数字,与无穷大一样大,在编程中我们只关心最坏的情况,因此最坏的情况是S非常大,A [i]的每个值也非常大。因此,时间复杂度将为O(n ^ 2)
对于一般用途,我们可以如下计算时间复杂度:
复杂度为O(R)