रेडिक्स सॉर्ट एल्गोरिदम पूर्णांकों को बकेट्स में वितरित करता है जो किसी संख्या के महत्वपूर्ण अंक या मान (रेडिक्स) पर आधारित होता है। रेडिक्स ऐरे के मानों की संख्या प्रणाली पर आधारित होता है। आइए देखें कि इसे कैसे लागू किया जा सकता है।
उदाहरण
function radixSort(arr) { // अधिकतम संख्या खोजें और इसे 10 से गुणा करें ताकि अधिकतम + 1 के अंकों की संख्या वाली संख्या मिले const maxNum = Math.max(...arr) * 10; let divisor = 10; while (divisor < maxNum) { // 0-9 में से प्रत्येक के लिए बकेट ऐरे बनाएं let buckets = [...Array(10)].map(() => []); // प्रत्येक संख्या के लिए, वर्तमान महत्वपूर्ण अंक प्राप्त करें और इसे संबंधित बकेट में डालें for (let num of arr) { buckets[Math.floor((num % divisor) / (divisor / 10))].push(num); } // सभी सब ऐरे को कॉनकैट करके ऐरे को पुनर्निर्मित करें arr = [].concat.apply([], buckets); // अगले महत्वपूर्ण अंक पर जाएं divisor *= 10; } return arr; } console.log(radixSort([5,3,88,235,65,23,4632,234]))
आउटपुट
[ 3, 5, 23, 65, 88, 234, 235, 4632 ]