Question: The following recursive algorithm returns the index of the smallest element in a list A containing n elements. The elements in the list are assumed

The following recursive algorithm returns the index of the smallest element in a list A containing n elements. The elements in the list are assumed to start from index # 1

findMin (startIndex, A) if startIndex = n // case of list containing one element return startIndex x = findmin (startIntex+1, A) // find min in elements index+1 .. n if A[x] < A[startIndex] // compare it with element at index return x // return the index of the smallest else return startIndex

Using the algorithm in above, write a recursive version for Selection Sort. For those who dont remember Selection Sort, below is the pseudocode for it. Note that the version below does not use the recursive findMin outlined in above. Then write a Recurrence Relation for the time complexity of your recursive selection sort algorithm you developed in c) above, then solve it to find its time complexity.

selSort (A) for i = 1 to n-1 minIndex = i // find the index of the min element between j and n for j = i+1 to n if A[j] < A [minIndex] minIndex = j swap (A[i], A[minIndex]) // swap the min element with the ith element

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!