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. Pick up a classic book: C How to ProgramThe most-reprinted book on the subject
  3. Read the landmark paper: Insertion merge sortingCited 3 times
  4. Go sideways: Selection sortA closely related topic
  5. Go sideways: K-way merge algorithmA closely related topic

đź“– Definitions

No dictionary entry for this exact phrase.

🏆 Landmark papers (most cited)

📚 Books worth reading

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

đź”— Related topics