Selection Sort in Python3
Below is an example of the Selection Sort algorithm in Python3. See the Selection Sort page for more information and implementations.
selection-sort in Python3
def selection_sort(array):
# step 1: loop from the beginning of the array to the second to last item
currentIndex = 0
while (currentIndex < len(array) - 1):
# step 2: save a copy of the currentIndex
minIndex = currentIndex
# step 3: loop through all indexes that proceed the currentIndex
i = currentIndex + 1
while (i < len(array)):
# step 4: if the value of the index of the current loop is less
# than the value of the item at minIndex, update minIndex
# with the new lowest value index
if (array[i] < array[minIndex]):
# update minIndex with the new lowest value index
minIndex = i
i += 1
# step 5: if minIndex has been updated, swap the values at minIndex and currentIndex
if (minIndex != currentIndex):
temp = array[currentIndex]
array[currentIndex] = array[minIndex]
array[minIndex] = temp
currentIndex += 1
if __name__ == '__main__':
array = [12, 11, 15, 10, 9, 1, 2, 3, 13, 14, 4, 5, 6, 7, 8]
selection_sort(array)
print(array)