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

जावास्क्रिप्ट में बहु-आयामी सरणियों में क्रमबद्ध करें

<घंटा/>

मान लीजिए, हमारे पास सरणियों की निम्नलिखित सरणी है -

const arr = [
["A","F","A","H","F","F"],
 ["F","A","A","F","F","H"]
];

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक ऐसी सरणी लेता है।

फ़ंक्शन को दिए गए सरणी के सभी उप-सरणी को इन नियमों के अनुसार आंतरिक रूप से क्रमबद्ध करना चाहिए -

  • यदि तत्व "ए" या "एफ" नहीं हैं, तो उन्हें अपनी स्थिति बनाए रखनी चाहिए
  • यदि तत्व "ए" या "एफ" में से एक है, तो उन्हें वर्णानुक्रम में क्रमबद्ध किया जाना चाहिए

इसलिए, उपरोक्त सरणी के लिए अंतिम आउटपुट इस तरह दिखना चाहिए -

const output = [ ["A","A","A","H","A","F"],
["F","F","F","F","F","H"]
];

ध्यान दें कि यदि सॉर्टिंग एल्गोरिथम उन्हें ऐसा करने के लिए प्रेरित करता है, तो उप-सरणी के तत्व अपने सरणियों को बदल सकते हैं।

उदाहरण

const arr = [
   ["A","F","A","H","F","F"],
    ["F","A","A","F","F","H"]
];
const customSort = (arr = []) => {
   const order = [].concat(...arr.slice()),
   res = []; order.forEach((el, ind) => {
      if (el === 'A') {
         const fIndex = order.indexOf('F');
         if (fIndex < ind){
            order[fIndex] = 'A'; order[ind] = 'F';
         };
      };
   })
   arr.forEach(el => res.push(order.splice(0, el.length)))
   return res;
}
console.log(customSort(arr));

आउटपुट

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

[ [ 'A', 'A', 'A', 'H', 'A', 'F' ], [ 'F', 'F', 'F', 'F', 'F', 'H' ] ]

  1. जावास्क्रिप्ट में सरणी बनाम सेट।

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

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

    जावास्क्रिप्ट में सरणियों को कम करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document

  1. जावास्क्रिप्ट में बहु-आयामी सरणियों को समतल करना

    जावास्क्रिप्ट में बहु-आयामी सरणियों को समतल करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title