Consider a sorted array of n numbers and a number x. What would be the time complexity of the best known algorithm to find a triplet with sum equal to x. For example, arr[] = {1, 5, 10, 15, 20, 30}, x = 40. Then there is a triplet {5, 15, 20} with sum 40.
(A)
O(n)
(B)
O(n^2)
(C)
O(n Log n)
(D)
O(n^3)
Answer: (B)
Explanation:
We need to fix every element one by one, then apply two pointer approach to find the pair with x minus the fixed element in remaining array after the fixed element. Please see method 3 of Find a triplet that sum to a given value
Hence Option(B) is the correct Option.
Quiz of this Question
Please comment below if you find anything wrong in the above post