How I understand the master theorem, an algorithm can be defined recursively as:
a T(n/b) + O(n^d)
Where a is the number of subproblems, n/b is the size of the subproblems, and O(n^d) is the recombination time of the subproblems. Calculating the time complexity of the master theorem goes as follows:
T(n) = { O(n^d) if d > log base b of a
{
{ O(n^d log n) if d = log base b of a
{
{ O(n^ (log base b of a) ) if d < log base b of a
My question is, what if the recombination time is not expressed in the form O(n^d)? Such as O(2^n) or O(log(n)). How would one determine the time complexity?