रेडिक्स सॉर्ट
रेडिक्स सॉर्ट एक सॉर्टिंग एल्गोरिदम है जो पूर्णांक कुंजियों वाले डेटा को व्यक्तिगत अंकों द्वारा समूहित करके क्रमबद्ध करता है जो समान महत्वपूर्ण स्थिति और मान साझा करते हैं।
हमें एक JavaScript फ़ंक्शन लिखना है जो एकमात्र तर्क के रूप में शाब्दिक मूल्यों की एक सरणी लेता है। फ़ंक्शन को रेडिक्स सॉर्ट एल्गोरिदम का उपयोग करके सरणी को बढ़ते या घटते क्रम में क्रमबद्ध करना चाहिए।
उदाहरण
निम्नलिखित कोड देखें:
const arr = [45, 2, 56, 2, 5, 6, 34, 1, 56, 89, 33];
const radixSort = (arr = []) => {
const base = 10;
let divider = 1;
let maxVal = Number.NEGATIVE_INFINITY;
while (divider === 1 || divider <= maxVal) {
const buckets = [...Array(10)].map(() => []);
for (let val of arr) {
buckets[Math.floor((val / divider) % base)].push(val);
maxVal = val > maxVal ? val : maxVal;
}
arr = [].concat(...buckets);
divider *= base;
};
return arr;
};
console.log(radixSort(arr));
आउटपुट
कंसोल पर निम्नलिखित आउटपुट प्राप्त होगा:
[
1, 2, 2, 5, 6,
33, 34, 45, 56, 56,
89
]