- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Insertion Sort in Python Program
In this article, we will learn about the implementation of Insertion sort in Python 3.x. Or earlier.
Algorithm
Iterate over the input elements by growing the sorted array at each iteration.
Compare the current element with the largest value available in the sorted array.
If the current element is greater, then it leaves the element in its place and moves on to the next element else it finds its correct position in the sorted array and moves it to that position in the array.
This is achieved by shifting all the elements towards the right, which are larger than the current element, in the sorted array to one position ahead.
Now let’s see the visual representation of the algorithm
Now let’s see the implementation
Example
def insertionSort(arr): for i in range(1, len(arr)): key = arr[i] # Move elements of arr[0..i-1], that are greater than key, # to one position ahead of their current position j = i-1 while j >=0 and key < arr[j] : arr[j+1] = arr[j] j -= 1 arr[j+1] = key # main arr = ['t','u','t','o','r','i','a','l'] insertionSort(arr) print ("The sorted array is:") for i in range(len(arr)): print (arr[i])
Output
The sorted array is: a i l o r t t u
Time Complexity: O(n*2)
Auxiliary Space: O(1)
All the variables are declared in the global frame as shown in the figure below −
Conclusion
In this article, we learnt about the Insertion sort and its implementation in Python 3.x. or earlier.
- Related Articles
- Python Program for Insertion Sort
- Python Program for Binary Insertion Sort
- Python Program for Recursive Insertion Sort
- C++ Program Recursive Insertion Sort
- What is Insertion sort in Python?
- Java program to implement insertion sort
- C++ Program to Implement Insertion Sort
- C Program for Recursive Insertion Sort
- Java Program for Recursive Insertion Sort
- Java Program for Binary Insertion Sort
- Insertion Sort
- Insertion sort in Java.
- Insertion Sort in C#
- Program to find out the number of shifts required to sort an array using insertion sort in python
- Binary Insertion Sort in C++
