Selection Sort in Python
The selection sort algorithm begins by finding the smallest value in the list and then places this smallest value in the first position in the list. And then algorithm is repeated for remaining items in the list.
Finding smallest value in the list is accomplished by a linear search through the list. The user defined function
selection() in our program finds the index of the smallest element. And, function
selection_sort() takes the value from index given by
selection() and places in order.
Python Source Code: Selection Sort
# Select function for selection sort def selection(sequence, start): min_index = start for i in range(start+1, len(sequence)): if sequence[min_index] > sequence[i]: min_index = i return min_index # selection sort algorithm def selection_sort(sequence): for i in range(len(sequence)-1): min_index = selection(sequence, i) temp = sequence[i] sequence[i] = sequence[min_index] sequence[min_index] = temp # list to check lst = [35, 18, 43, 66, 39, 11, 10, 117] # calling selection_sort algorithm selection_sort(lst) # displaying result print('Sorted list is: ', lst)
Output: Selection Sort
Sorted list is: [10, 11, 18, 35, 39, 43, 66, 117]