Selection Sort Algorithm in Python

Hello everyone, welcome back to! In continuation of the algorithm series here is one of the sorting algorithms. Here in this post, I will discuss on Selection Sort algorithm and how to implement Selection Sort in Python.

In Selection Sort algorithm, the smallest element is searched and placed at the starting of the list by swapping the smallest element found with the first element of the list. So here, the list has 2 parts, one is sorted and the other is unsorted. Initially, the whole list is unsorted, but when each swapping occurs the leftmost part of the list becomes sorted and continues until the whole list is sorted.

You can also watch the video on YouTube here.

Program on Github

Time Complexity Of Selection Sort

Best Case O(n2)
Average Case O(n2)
Worst Case O(n2)


Given a list L of n elements with values or records L0, L1, …, Ln-1, bubble sort is applied to sort the list L.

  1. Find the smallest element in the array
  2. Swap the position(index) of the first element with the smallest element
  3. Repeat the step 1 from 2nd element in the array and continue until all elements are sorted
  4. Return the final sorted list.

Program on Github

Selection Sort Algorithm – Code Visualization



Selection Sort Algorithm -
Selection Sort Algorithm –
Selection Sort Algorithm -
Selection Sort Algorithm –

Program on Github

Please feel free to look at other sorting algorithms here or all the algorithms here.


Leave a Reply