pass_num pass_num a_list=[ short_bubble_sort(a_listprint(a_listself check suppose you have the following list of numbers to sort[ which list represents the partially sorted list after three complete passes of bubble sort [ [ [ [ selection sort the selection sort improves on the bubble sort by making only one exchange for every pass through the list in order to do thisa selection sort looks for the largest value as it makes pass andafter completing the passplaces it in the proper location as with bubble sortafter the first passthe largest item is in the correct place after the second passthe next largest is in place this process continues and requires passes to sort itemssince the final item must be in place after the ( )st pass figure shows the entire sorting process on each passthe largest remaining item is selected and then placed in its proper location the first pass places the second pass places the third places and so on the function is shown below def selection_sort(a_list)for fill_slot in range(len(a_list - )pos_of_max for location in range( fill_slot )if a_list[locationa_list[pos_of_max]pos_of_max location temp a_list[fill_slota_list[fill_slota_list[pos_of_maxa_list[pos_of_maxtemp a_list [ selection_sort(a_listprint(a_listyou may see that the selection sort makes the same number of comparisons as the bubble sort and is therefore also ( howeverdue to the reduction in the number of exchangesthe sorting