Stooge sort

An inefficient recursive sorting algorithm

Stooge sort is a recursive sorting algorithm. It is notable for its exceptionally poor time complexity of O ( n log ⁡ 3 / log ⁡ 1.5 ) {\displaystyle O(n^{\log 3/\log 1.5})} = O ( n 2.7095... ) {\displaystyle O(n^{2.7095...})} The algorithm's running time is thus slower compared to reasonable sorting algorithms, and is slower than bubble sort, a canonical example of a fairly inefficient sort.

Nº Q1754846 ★

Common · Knowledge

Stooge sort

An inefficient recursive sorting algorithm

Stooge sort is a recursive sorting algorithm. It is notable for its exceptionally poor time complexity of O ( n log ⁡ 3 / log ⁡ 1.5 ) {\displaystyle O(n^{\log 3/\log 1.5})} = O ( n 2.7095... ) {\displaystyle O(n^{2.7095...})} The algorithm's running time is thus slower compared to reasonable sorting algorithms, and is slower than bubble sort, a canonical example of a fairly inefficient sort.

From Wikipedia

Stooge sort is a recursive sorting algorithm. It is notable for its exceptionally poor time complexity of O ( n log ⁡ 3 / log ⁡ 1.5 ) {\displaystyle O(n^{\log 3/\log 1.5})} = O ( n 2.7095... ) {\displaystyle O(n^{2.7095...})} The algorithm's running time is thus slower compared to reasonable sorting algorithms, and is slower than bubble sort, a canonical example of a fairly inefficient sort. It is, however, more efficient than Slowsort. The name comes from The Three Stooges. The algorithm is defined as follows: If the value at the start is larger than the value at the end, swap them. If there are three or more elements in the list, 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 It is important to get the integer sort size used in the recursive calls by rounding the 2/3 upwards, e.g. rounding 2/3 of 5 should give 4 rather than 3, as otherwise the sort can fail on certain data.

Text: Wikipédia, CC BY-SA 4.0. · Image: Simpsons contributor (CC0) ·

Related cards

Open

…

Confirmation