Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में रेडिक्स सॉर्ट (Radix Sort)


रेडिक्स सॉर्ट

रेडिक्स सॉर्ट एक सॉर्टिंग एल्गोरिदम है जो पूर्णांक कुंजियों वाले डेटा को व्यक्तिगत अंकों द्वारा समूहित करके क्रमबद्ध करता है जो समान महत्वपूर्ण स्थिति और मान साझा करते हैं।

हमें एक 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
]

  1. JavaScript बेसिक ऐरे मेथड्स JavaScript बेसिक ऐरे मेथड्स

    कुछ बेसिक JavaScript ऐरे मेथड्स निम्नलिखित हैं: मेथड विवरण Array.push() ऐरे के अंत में एलिमेंट्स जोड़ने के लिए। Array.pop() ऐरे के अंत से एलिमेंट्स हटाने के लिए। Array.unshift() ऐरे के शुरुआत में एलिमेंट्स

  1. JavaScript Sort() मेथड JavaScript Sort() मेथड

    JavaScript Sort() मेथड का उपयोग ऐरे को सॉर्ट करने के लिए किया जाता है। सॉर्टिंग का क्रम वर्णमाला, न्यूमेरिक, आरोही या अवरोही हो सकता है।उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="

  1. जावास्क्रिप्ट में Array.prototype.sort() मेथड जावास्क्रिप्ट में Array.prototype.sort() मेथड

    जावास्क्रिप्ट Array.prototype.sort() मेथड का उपयोग एरे को सॉर्ट करने के लिए किया जाता है। सॉर्टिंग का क्रम अल्फाबेटिक, न्यूमेरिक, आरोही या अवरोही हो सकता है। Array.prototype.sort() मेथड के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /