Sorting Algorithms

Sorting (for example the act of putting an unsorted list of numbers into ascending order) is a fundamental food of the computer science diet.

There are many different algorithms for sorting, and an understanding of their similarities and differences can give you a good understanding of some properties of all algorithms.

Concepts you will learn about include:

  • Big O Notation
  • Memory constraints
  • Time constraints
  • Serial versus Parallel
  • Data structures
  • Function reuse

Each of those topics are giants in the world of programming, and pop up all over the place.

List of Sorting Algorithms

(This list is deliberately unsorted)

  • Bubble Sort
  • Insertion Sort
  • Heap Sort
  • Merge Sort
  • Quicksort
  • Bogosort

External Links