first you must define a recursive export, for example T (1) then: since T (2 ^ k) = 2T (2 ^ (k-1)) + k; * we define g (k) = T (2 ^ k) / 2 ^ k; then * come to: g (k) = g (k-1) + k / 2 ^ k = g (1) + sum (i / 2 ^ i); i = 2,3,4 ... k where g (1) = T (1) / 2 = c;
it = y;
y/2;
y-y/2 - , .
, sum = 3/2 - (k + 2)/2 ^ k;
T (n) = 2 ^ k * g (k) = (3/2 + c) * n - (2 + logn)