Selection Sort Python (original) (raw)
Last Updated : 14 Mar, 2026
Selection Sort is one of the simplest comparison-based sorting algorithms. It sorts an array by repeatedly finding the smallest (or largest) element from the unsorted portion and placing it in its correct position.
Working of Selection Sort
- Start from the first element and find the smallest element in the entire array by iterating over it.
- Swap this smallest element with the first element.
- Now, move to the second element find the next smallest in the remaining unsorted portion and swap it with the second position.
- Repeat this process until the entire array becomes sorted.
Python Implementation
Python `
def selectionSort(array, size): for ind in range(size - 1): min_index = ind
for j in range(ind + 1, size):
if array[j] < array[min_index]:
min_index = j
array[ind], array[min_index] = array[min_index], array[ind]arr = [-2, 45, 0, 11, -9, 88, -97, -202, 747] size = len(arr) selectionSort(arr, size)
print(arr)
`
Output
[-202, -97, -9, -2, 0, 11, 45, 88, 747]
**Explanation:
- **for ind in range(size) (Outer loop): Iterates through each index, treating it as the start of the unsorted portion.
- **min_index = ind: Assumes the current index holds the smallest element.
- **for j in range(ind + 1, size) (Inner loop): Finds the index of the minimum element in the unsorted part of the array.
- **if array[j] < array[min_index]: Updates min_index whenever a smaller element is found.
- Swap step: Exchanges the smallest found element with the first element of the unsorted section.