# Like 0Likes Dislike Radix Sort

digit significant bins sort radix bin array data items
The radix sort is not as versatile as some others, but it runs in linear - O (n) - time.

Unlike most other sorting algorithms, Radix Sort does not involve comparison between the items being sorted. Instead, Radix Sort shuffles the items into small bins, then recollect the bins and repeat the process until the array is sorted.

The magic of Radix Sort lies in finding the key to shuffle the items. For integer data, the key is each individual digits. In a group of data, there can be up to ten bins for each digit (0 - 9). Thus we isolate each individual digit of each data, and place into the corresponding bin. When we start, we start with the least significant digit and work our way up to the most significant digit.

Below is the pseudo-code of Radix Sort.

Radix Sort (Sorting array A[size])

Create all of the bins.
From the least significant digit to the most significant digit
{
For each element (from the first to the last)
{
Isolate the value of the significant digit.
Store the element in the bin with the matching significant digit value.
}
For each bin (from the first to the last)
{
Retrieve all of the elements and store them back into the array.
}
}
Destroy all of the bins.