Live briefing
Everything about Sorting algorithm
Algorithm that arranges lists in order
In computer science, a sorting algorithm is an algorithm that puts elements of a list into an order. The most frequently used orders are numerical order and lexicographical order, and either ascending order or descending order. Efficient sorting is important for optimizing the efficiency of other algorithms that require input data to be in sorted lists. Sorting is also often useful for canonicalizing data and for producing human-readable output. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Sorting algorithmA 5-minute orientation
- Skim a recent paper: An enhanced fast non-dominated solution sorting genetic algorithm for multi-objective problemsInfluential work since 2022
- Pick up a classic book: Data Structures and AlgorithmsThe most-reprinted book on the subject
- Read the landmark paper: An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box ConstraintsCited 6,964 times
- Go sideways: QuicksortA closely related topic
- Go sideways: Radix sortA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🏆 Landmark papers (most cited)
An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints
Muiltiobjective Optimization Using Nondominated Sorting in Genetic Algorithms
Algorithm 410: Partial sorting
Lexical Permutation Sorting Algorithm
Splitsort—an adaptive sorting algorithm
Engineering a cache-oblivious sorting algorithm
Preimages Under the Stack-Sorting Algorithm
A fast sorting algorithm, a hybrid of distributive and merge sorting
🆕 Influential since 2022
An enhanced fast non-dominated solution sorting genetic algorithm for multi-objective problems
Traffic light optimization using non-dominated sorting genetic algorithm (NSGA2)
A new 1.375-approximation algorithm for sorting by transpositions
A non-dominated sorting based multi-objective neural network algorithm
Radar pre-sorting algorithm based on autoencoder and LSTM
📚 Books worth reading
Data Structures and AlgorithmsKurt Mehlhorn · 1984
Parallel sorting algorithmsSelim G. Akl · 1985
Optimizing binary trees grown with a sorting algorithmWilliam A Martin · 1969
AlgorithmsPanos Louridas · 2020
Sorting and searchingDonald Knuth · 1973
A study of data manipulation algorithms in magnetic bubble memoriesKin Man Chung · 1979- 📕Algorithmes de triG. Louït · 1971
- 📕Problems in sorting and graph algorithmsDana Richards · 1984
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Quicksort Quicksort is an efficient, general-purpose sorting algorithm. Quicksort was developed by British computer scientist Tony Hoare in 1959 and published in…
- Radix sort In computer science, radix sort is a non-comparative sorting algorithm. It avoids comparison by creating and distributing elements into buckets according…
- Introsort Introsort or introspective sort is a hybrid sorting algorithm that provides both fast average performance and (asymptotically) optimal worst-case performance…
- Insertion sort 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…
- Bucket sort Bucket sort, or bin sort, is a sorting algorithm that works by distributing the elements of an array into a number of buckets. Each bucket is then sorted…
- Heapsort In computer science, heapsort is an efficient, comparison-based sorting algorithm that reorganizes an input array into a heap (a data structure where each…
- Spreadsort Spreadsort is a sorting algorithm invented by Steven J. Ross in 2002. It combines concepts from distribution-based sorts, such as radix sort and bucket…
- Merge sort Merge sort (also commonly spelled as mergesort or merge-sort) is an efficient, general-purpose, comparison-based sorting algorithm. Most implementations…