2.0 KiB
| title | chunk | source | category | tags | date_saved | instance |
|---|---|---|---|---|---|---|
| Stooge sort | 1/1 | https://en.wikipedia.org/wiki/Stooge_sort | reference | science, encyclopedia | 2026-05-05T11:39:14.899464+00:00 | kb-cron |
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.
== Implementation ==
=== Pseudocode ===
== References ==
=== Sources === Black, Paul E. "stooge sort". Dictionary of Algorithms and Data Structures. National Institute of Standards and Technology. Retrieved 18 June 2011. Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (2001) [1990]. "Problem 7-3". Introduction to Algorithms (2nd ed.). MIT Press and McGraw-Hill. pp. 161–162. ISBN 0-262-03293-7.
== External links == Sorting Algorithms (including Stooge sort) Stooge sort – implementation and comparison