Name

Edit

**Stooge sort** is a recursive sorting algorithm with a time complexity of O(*n*^{log 3 / log 1.5} ) = O(*n*^{2.7095...}). The running time of the algorithm is thus extremely slow compared to efficient sorting algorithms, such as Merge sort, and is even slower than Bubble sort, a canonical example of a fairly inefficient and simple sort.

The algorithm is defined as follows:

- If the value at the end is smaller than the value at the start, swap them.
- If there are three or more elements in the current list subset, then:
- Stooge sort the initial 2/3 of the list
- Stooge sort the final 2/3 of the list
- Stooge sort the initial 2/3 of the list again

- else: exit the procedure

The algorithm gets its name from slapstick routines of the Three Stooges, in which each stooge hits the other two.

C