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

JavaScript में 2-D ऐरे को ग्रुप करना और सॉर्ट करना


मान लीजिए हमारे पास नंबर्स का दो-आयामी ऐरे है:

const arr = [    [1, 3, 2],    [5, 2, 1, 4],    [2, 1] ];

हमें एक जावास्क्रिप्ट फंक्शन लिखना है जो सभी समान नंबर्स को उनके अपने अलग सबऐरे में ग्रुप करे, और फिर फंक्शन को ग्रुप ऐरे को सॉर्ट करके सबऐरे को बढ़ते क्रम में रखना चाहिए।

इसलिए, अंत में नया ऐरा ऐसा दिखना चाहिए:

const output = [    [1, 1, 1],    [2, 2, 2],    [4], [3],    [5] ];

उदाहरण

इसके लिए कोड:

const arr = [    [1, 3, 2],    [5, 2, 1, 4],    [2, 1] ]; const groupAndSort = arr => {    const res = [];    const map = Object.create(null);    Array.prototype.forEach.call(arr, item => {       item.forEach(el => {          if (!(el in map)) {             map[el] = [];             res.push(map[el]);          };          map[el].push(el);       });    });    res.sort((a, b) => {       return a[0] - b[0];    });    return res; }; console.log(groupAndSort(arr));

आउटपुट

कंसोल में आउटपुट:

[ [ 1, 1, 1 ], [ 2, 2, 2 ], [ 3 ], [ 4 ], [ 5 ] ]

  1. - जावास्क्रिप्ट में 2-D स्ट्रिंग सरणी को क्रमबद्ध करना और विकर्ण तत्व ढूंढना

    समस्याहमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो n स्ट्रिंग्स की एक सरणी लेता है। और सरणी में प्रत्येक स्ट्रिंग में ठीक n कैरेक्टर होते हैं। हमारा फ़ंक्शन पहले सरणी को वर्णमाला क्रम में क्रमबद्ध करेगा। और फिर ऊपरी बाएं कोने से शुरू होने वाले मुख्य विकर्ण पर मौजूद कैरेक्टर्स द्वारा बनी स्ट्रिंग लौटाएग

  1. - जावास्क्रिप्ट में सरणी को क्रमबद्ध करना और अंतरों का योग ढूंढना

    समस्याहमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो पूर्णांकों की एक सरणी लेता है। हमारा फ़ंक्शन सरणी में अवरोही क्रम में लगातार जोड़ों के बीच के अंतरों का योग करेगा।उदाहरण के लिए: यदि सरणी है:[6, 2, 15]तो आउटपुट होना चाहिए:(15 - 6) + (6 - 2) = 13उदाहरणनिम्न कोड देखें:const arr = [6, 2, 15]; const sumDi

  1. - JavaScript में 2-D सरणी को नई पंक्तियों और स्तंभों में पुनः आकार देना

    समस्याएक 2-D सरणी, वांछित पंक्तियों की संख्या r और स्तंभों की संख्या c दिए गए हैं, मूल सरणी के तत्वों को पंक्ति-क्रम (row-traversing) में बनाए रखते हुए एक नई 2-D सरणी बनाएं। यदि कुल तत्वों की संख्या मेल नहीं खाती, तो मूल सरणी लौटाएं।उदाहरणconst arr = [ [6, 7], [8, 9] ]; const r = 1, c = 4; // आउटप