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

एक सरणी को पुनरावर्ती सॉर्ट करने के लिए मर्ज सॉर्ट का उपयोग करना जावास्क्रिप्ट

<घंटा/>

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो संख्याओं की एक सरणी लेता है। फ़ंक्शन को मर्ज सॉर्ट एल्गोरिदम का उपयोग करके सरणी को सॉर्ट करना चाहिए।

मर्ज सॉर्ट करें

मर्ज सॉर्ट दो भागों या प्रक्रियाओं से बना होता है -

  • एक पुनरावर्ती भाग जो संग्रह को एकल इकाइयों में विभाजित करता है,
  • और फिर एक पुनरावृत्त भाग जो उन्हें सही क्रम में वापस एक साथ जोड़ता है।

उदाहरण

const arr = [23, 4, 67, 32, 1, 7, 56, 5, 89];
const mergeSort = arr => {
   if (arr.length < 2){
      return arr;
   }
   const middle = Math.floor(arr.length / 2);
   const left = arr.slice(0, middle), right = arr.slice(middle, arr.length);
   return merge(mergeSort(left), mergeSort(right));
};
const merge = (left, right) => {
   const res = [];
   while (left.length && right.length) {
      if (left[0] <= right[0]){
         res.push(left.shift());
      }
      else{
         res.push(right.shift());
      };
   }
   while (left.length){
      res.push(left.shift());
   };
   while (right.length){
      res.push(right.shift());
   };
   return res;
};
console.log(mergeSort(arr));

आउटपुट

और कंसोल में आउटपुट होगा -

[
   1, 4, 5, 7, 23,
   32, 56, 67, 89
]

  1. जावास्क्रिप्ट में मर्ज सॉर्ट को कैसे कार्यान्वित करें?

    मर्ज-सॉर्ट करें मर्ज सॉर्ट एक डिवाइड-एंड-कॉनकॉर टाइप सॉर्टिंग-एल्गोरिदम का एक उदाहरण है। मर्ज सॉर्ट का इनपुट कुछ तत्वों की एक सरणी है, जिन्हें आमतौर पर कम से कम से सबसे बड़े तक व्यवस्थित करने की आवश्यकता होती है। मर्ज सॉर्ट में अनुसरण करने के चरण मर्ज सॉर्ट सरणी को दो उप सरणियों में विभाजित करता

  1. जावास्क्रिप्ट में सॉर्ट बनाम त्वरित सॉर्ट मर्ज करें

    मर्ज सॉर्ट डिवाइड और जीत तकनीक पर आधारित एक छँटाई तकनीक है। इसमें (एन लॉग एन) की सबसे खराब स्थिति समय जटिलता है। लेकिन यह स्थान के मामले में एक अतिरिक्त लागत के साथ आता है क्योंकि यह एल्गोरिथ्म एक अतिरिक्त O(n) मेमोरी लेता है। अब आइए देखें कि हम इस एल्गोरिथम को कैसे लागू करने जा रहे हैं। हम 2 फ़ंक्

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

    JavaScript Array.prototype.sort() पद्धति का उपयोग किसी सरणी को छांटने के लिए किया जाता है। छँटाई का क्रम वर्णानुक्रमिक, संख्यात्मक, आरोही या अवरोही हो सकता है। Array.prototype.sort() विधि के लिए कोड निम्नलिखित है - उदाहरण दस्तावेज़ बॉडी { फॉन्ट-फ़ैमिली:सेगो यूआई, ताहोमा, जिनेवा, वर्दाना, सेन्स-सेरि