Everything About ___
Live briefing

Everything about Insertion sort

Sorting algorithm

Insertion sort is a simple sorting algorithm that builds the final sorted array (or list) one item at a time by comparisons. It is much less efficient on large lists than more advanced algorithms such as quicksort, heapsort, or merge sort. However, insertion sort provides several advantages:Simple implementation: Jon Bentley shows a version that is three lines in C-like pseudo-code, and five lines when optimized. Efficient for (quite) small data sets, much like other quadratic (i.e., O(n2)) sorting algorithms May be more efficient in practice than most other simple quadratic algorithms such as selection sort or bubble sort – but relative incoming data order and read/write costs matter – with high exchange costs and randomly ordered data, selection sort is faster Adaptive, i.e., efficient for data sets that are already substantially sorted: the time complexity is O(kn) when each element in the input is no more than k places away from its sorted position Stable; i.e., does not change the relative order of elements with equal keys In-place; i.e., only requires a constant amount O(1) of additional memory space Online; i.e., can sort a list as it receives it Wikipedia →

🧭 Start here: a 6-step reading path

  1. Read the overview: Insertion sortA 5-minute orientation
  2. Skim a recent paper: Using Artificial Immune Systems to Sort and Shim Insertion Devices at Diamond Light SourceInfluential work since 2022
  3. Pick up a classic book: The art of cookery, made plain and easyThe most-reprinted book on the subject
  4. Read the landmark paper: Insertion Sort is O(n log n)Cited 45 times
  5. Go sideways: Selection sortA closely related topic
  6. Go sideways: K-way merge algorithmA closely related topic

📖 Definitions

Noun A sorting algorithm that performs its task by inserting new items into a pre-existing sorted data structure.

🏆 Landmark papers (most cited)

🆕 Influential since 2022

📚 Books worth reading

Ranked by number of editions on Open Library, a rough measure of how lasting a book is.

🔗 Related topics