Во-первых, пусть T (1) = 1, n = 3 ^ k и c = 1:
T(n) = 3T(n/3) + cn
= T(3^k) = 3T(3^(k-1)) + 3^k
= 3(3T(3^(k-2)) + 3^(k-1)) + 3^k
= 3^2T(3^(k-2)) + 3^k + 3^k
= 3^2(3T(3^(k-3)) + 3^(k-2)) + 3^k + 3^k
= 3^3T(3^(k-3)) + 3^k + 3^k + 3^k
= ...
= 3^kT(1) + k*3^k
= nT(1) + n*log3n
= n + n*log3n
Можете ли вы доказать по индукции отсюда?
@ Edit
Рассмотрим следующее расширение дерева:
n = n
n/3 n/3 n/3 = n
n/9 n/9 n/9 n/9 n/9 n/9 n/9 n/9 n/9 = n
... = n
Каждая строка суммирует до n.Если вы предполагаете, что n = 3 ^ k, дерево сбалансировано и имеет высоту k = log3n, следовательно, сложность равна Theta (n * log3n).