option B
Three cases are possible with h(n) and g(n),
Case (i) : h(n) >> g(n)
In this case we take O(h(n)) the complexity of the algorithm as g(n) is a lower order term, we drop it.
Case (ii) : h(n) << g(n)
In this case we take O(g(n)) the complexity of the algorithm as h(n) is a lower order term, we drop it.
Case (iii) : h(n) == g(n)
Time Complexity can be either O(g(n)) or O(h(n)) (which is equal asymptotically).
Hence, max(h(n), g(n))