as you will have already observedthe main function of the deterministic selection algorithm looks exactly the same as its random selection counterpart after the initial array_list has been partitioned about the approximate mediana comparison with the kth element is made if split is less than kthen recursive call to deterministic_select(array_listsplit rightkis made this will look for the kth element in that half of the array otherwise the function call to deterministic_select(array_listleftsplit- kis made summary this has examined ways to answer the question of how to find the ith-smallest element in list the trivial solution of simply sorting list to perform the operation of finding the ith-smallest has been explored there is also the possibility of not necessarily sorting the list before we can determine the ith-smallest element the random selection algorithm allows us to modify the quick sort algorithm to determine the ith-smallest element to further improve upon the random selection algorithm so that we can obtain time complexity of ( )we embark on finding the median of medians to enable us find good split during partitioning in the next we will explore the world of strings we will learn how to efficiently store and manipulate large amounts of text data structures and common string operations will be covered too