Question: The algorithm maximum determines the greatest element in the array Ap... q), where p is the lowest index in the array A and q is

The algorithm maximum determines the greatest element in the array Ap... q), where p is the lowest index in the array A and q is the highest index in A. int maximum(int[] a, int p, int q) { if (p == q) { return A[p]; } int k, l, max1, max2, max3; k P + roundDown((9-p+2)/3); 1 = k + roundDown ((9-p+2)/3); max1 = maximum(A, P, k-1); max2 = maximum(A, k, 1-1); max3 maximum(A, 1, 9); if (max1 >= max2 && max1 >= max3) { return max1; } else if (max2 >= max1 && max2 >= max3) { return max2; } else { return max3; } } a) The function uses the divide-and-conquer approach to determine the minimum element. Describe what the function does in each of the three steps of divide-and- conquer. Divide: Conquer: Combine: c) Determine the recurrence relation of the algorithm. For simplicity, you can assume that the given array size is a power of 3
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
