This article talks about radix sorting in JavaScript. If you don’t know about radix sorting in JavaScript or are interested in radix sorting in JavaScript, then let’s take a look at this article. Okay Let’s stop talking nonsense and get to the point
There are two methods of radix sorting
1. MSD sorts from the high order
2. LSD sorts from the lowest order
Radix sorting vs. counting sort vs. bucket sort
These three sorting algorithms all use the concept of buckets. But there are obvious differences in the use of buckets:
Radix sort: Allocate buckets according to each digit of the key value
Counting sort : Each bucket only stores a single key value
Bucket sorting: Each bucket stores a certain range of values
LSD radix sorting animation demonstration:
Radix sorting JavaScript code implementation:
//LSD Radix Sort var counter = [];function radixSort(arr, maxDigit) { var mod = 10; var dev = 1; for (var i = 0; i < maxDigit; i++, dev *= 10, mod *= 10) { for(var j = 0; j < arr.length; j++) { var bucket = parseInt((arr[j] % mod) / dev); if(counter[bucket]==null) { counter[bucket] = []; } counter[bucket].push(arr[j]); } var pos = 0; for(var j = 0; j < counter.length; j++) { var value = null; if(counter[j]!=null) { while ((value = counter[j].shift()) != null) { arr[pos++] = value; } } } } return arr;}
The above is all the content of this article. If you don’t know much about it, you can implement both sides yourself and it will be easy to master. oh!
Related recommendations:
Examples of counting sorting and radix sorting algorithms implemented in JS
The above is the detailed content of Detailed explanation of radix sorting in JavaScript. For more information, please follow other related articles on the PHP Chinese website!