The Master Theorem

Solving D&C recurrences.

Master Theorem: T(n)=aT(n/b)+f(n)T(n) = aT(n/b) + f(n)

Let c=logbac = \log_b a:

1.1. If f(n)=O(ncϵ)f(n) = O(n^{c-\epsilon}): T(n)=Θ(nc)T(n) = \Theta(n^c)

2.2. If f(n)=Θ(nc)f(n) = \Theta(n^c): T(n)=Θ(nclogn)T(n) = \Theta(n^c \log n)

3.3. If f(n)=Ω(nc+ϵ)f(n) = \Omega(n^{c+\epsilon}): T(n)=Θ(f(n))T(n) = \Theta(f(n))

Merge sort: 2T(n/2)+n2T(n/2) + n. a=2,b=2,c=1,f=na=2,b=2,c=1,f=n. Case 2: Θ(nlogn)\Theta(n \log n). Binary search: T(n/2)+1T(n/2) + 1. a=1,b=2,c=0,f=1a=1,b=2,c=0,f=1. Case 2: Θ(logn)\Theta(\log n).