2
我有這樣的算法(在c
代碼爲方便起見):複雜循環
int algo(int *T, int size)
{
int n = 0;
for (int i = 1; i < size; i++) {
for (int j = i; j < size; j++) {
n += (T[i] * T[j]);
}
}
return n;
}
這是什麼算法的時間複雜度?
我敢打賭,它是n * log (n)
,因爲我們在size
長度上有兩次重複迭代,第二次在size - i
上,但我不確定。
歡迎您提供正式的複雜性證明!
可能的[如何找到算法的時間複雜度]的副本(http://stackoverflow.com/questions/11032015/how-to-find-time-complexity-of-an-algorithm) –