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

जावास्क्रिप्ट में दो सरणियों में सामान्य लकीर ढूँढना

<घंटा/>

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो शाब्दिक के दो सरणी लेता है, आइए उन्हें arr1 और arr2 कहते हैं।

फ़ंक्शन को सरणी में अक्षर की सबसे लंबी सामान्य लकीर मिलनी चाहिए। फ़ंक्शन को अंततः उन शाब्दिकों की एक सरणी वापस करनी चाहिए।

उदाहरण के लिए -

यदि इनपुट सरणियाँ हैं -

const arr1 = ['a', 'b', 'c', 'd', 'e'];
const arr2 = ['k', 'j', 'b', 'c', 'd', 'w'];

तब आउटपुट ऐरे होना चाहिए -

const output = ['b', 'c', 'd'];

उदाहरण

निम्नलिखित कोड है -

const arr1 = ['a', 'b', 'c', 'd', 'e'];
const arr2 = ['k', 'j', 'b', 'c', 'd', 'w'];
const longestCommonSubsequence = (arr1 = [], arr2 = []) => {
   let str1 = arr1.join('');
   let str2 = arr2.join('');
   const arr = Array(str2.length + 1).fill(null).map(() => Array(str1.length + 1).fill(null));
   for (let j = 0; j <= str1.length; j += 1) {
      arr[0][j] = 0;
   }
   for (let i = 0; i <= str2.length; i += 1) {
      arr[i][0] = 0;
   }
   for (let i = 1; i <= str2.length; i += 1) {
      for (let j = 1; j <= str1.length; j += 1) {
         if (str1[j - 1] === str2[i - 1]) {
            arr[i][j] = arr[i - 1][j - 1] + 1;
         } else {
            arr[i][j] = Math.max(
               arr[i - 1][j],
               arr[i][j - 1],
            );
         }
      }
   }
   if (!arr[str2.length][str1.length]) {
      return [''];
   }
   const res = [];
   let j = str1.length;
   let i = str2.length;
   while (j > 0 || i > 0) {
      if (str1[j - 1] === str2[i - 1]) {
         res.unshift(str1[j - 1]);
         j -= 1;
         i -= 1;
      }
      else if (arr[i][j] === arr[i][j - 1]) {
         j -= 1;
      }
      else {
         i -= 1;
      }
   }
   return res;
};
console.log(longestCommonSubsequence(arr1, arr2));

आउटपुट

कंसोल पर आउटपुट निम्नलिखित है -

['b', 'c', 'd']

  1. जावास्क्रिप्ट में दो सरणियों से अधिकतम संख्या ढूँढना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता होती है जो एकल अंक संख्याओं के दो सरणी लेता है जो दो संख्याओं का प्रतिनिधित्व करता है, arr1 और arr2 पहले और दूसरे तर्क के रूप में। फ़ंक्शन का तीसरा तर्क एक संख्या होगी, num (num <= length of arr1 + length of arr2) हमारे फ़ंक्शन को लंबाई संख

  1. जावास्क्रिप्ट में शाब्दिक के दो सरणियों के बीच लापता संख्या ढूँढना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो दो सरणियों arr1 और arr2 में लेता है। arr2 arr1 का फेरबदल किया गया डुप्लिकेट है जिसमें केवल एक तत्व गायब है। हमारे फ़ंक्शन को उस एक तत्व को ढूंढना और वापस करना चाहिए। उदाहरण निम्नलिखित कोड है - { const obj ={}; के लिए (चलो i =0; i

  1. जावास्क्रिप्ट का उपयोग करके सरणियों के भीतर सभी सामान्य तत्वों का योग ढूँढना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता होती है जो संख्याओं की तीन सरणियों को लेता है। हमारे फ़ंक्शन को उन सभी संख्याओं का योग वापस करना चाहिए जो तीनों सरणियों में सामान्य हैं। उदाहरण निम्नलिखित कोड है - const arr1 = [4, 4, 5, 8, 3]; const arr2 = [7, 3, 7, 4, 1]; const arr3 = [11, 0