Tutorials » Algorithms Tutorial » Insertion Sort Algorithm

Insertion Sort Algorithm

Insertion sort builds a sorted list one item at a time by placing each item in its correct position.

Table of Contents

What is insertion sort?

Insertion sort builds a sorted list one item at a time by placing each item in its correct position. Algorithms are important for improving problem-solving skills, writing efficient programs, and preparing for coding interviews.

Before studying algorithms, it helps to understand basic programming concepts in Python or JavaScript.

How insertion sort Works

  1. Start with an unsorted list.
  2. Compare values using the rules of the sorting algorithm.
  3. Move or swap values into better positions.
  4. Repeat until the list is sorted.

insertion sort in Python

numbers = [5, 2, 9, 1, 3]
numbers.sort()
print(numbers)

insertion sort in JavaScript

const numbers = [5, 2, 9, 1, 3];
numbers.sort(function(a, b) {
  return a - b;
});
console.log(numbers);

Time Complexity

CaseComplexity
BestDepends on algorithm
AverageUsually O(n log n) or O(n?)
WorstUsually O(n log n) or O(n?)

To understand performance better, read Time Complexity Explained and Big O Notation.

Common Mistakes

Tip: Practice algorithms in a code editor. See the best code editors and best Python IDEs.

Frequently Asked Questions

Is insertion sort important?

Yes. It helps programmers solve problems efficiently and understand how code performance changes with input size.

Should beginners learn algorithms?

Yes. Beginners should learn basic searching, sorting, recursion, and Big O notation after learning programming fundamentals.

Which language is best for learning algorithms?

Python is beginner-friendly, while JavaScript is useful for web developers. Both are good for learning algorithms.