Consider the prune-and-search algorithm using the median of medians for finding the -th smallest element in an unsorted array of distinct elements, where , as described below:
Algorithm Select(A, k): Input: An array A of n elements and an integer k, Output: The k-th smallest element in A Step 1: If , then sort array A (with any method, e.g., insertion sort) and return the element with rank k (i.e., the k-th element in the sorted array). Step 2: Divide the array A into groups of five elements each (ignore the last group if it has fewer than five elements). Step 3: Find the median of each group. Step 4: Recursively compute the median of the found medians, denoted by m. Step 5: Partition the original array into the following three sets: Step 6: If then return Else if then return Select(L, k) Else return Select(R, k - |L| - 1).
Select one or more correct statements.