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

JavaScript में अंतराल सरणियों का प्रतिच्छेदन खोजना


समस्या

JavaScript फ़ंक्शन जो अंतरालों की दो सरणियों arr1 और arr2 को लेता है जो युग्मवार असंयुक्त और क्रमबद्ध क्रम में हैं।

एक बंद अंतराल [a, b] (a <= b के साथ) वास्तविक संख्याओं x के समुच्चय को दर्शाता है जहां a <= x <= b।

दो बंद अंतरालों का प्रतिच्छेदन वास्तविक संख्याओं का एक समुच्चय है जो या तो खाली है, या एक बंद अंतराल के रूप में दर्शाया जा सकता है। उदाहरण के लिए, [1, 3] और [2, 4] का प्रतिच्छेदन [2, 3] है।) हमारे फ़ंक्शन को इन दो अंतराल सरणियों का प्रतिच्छेदन वापस करना चाहिए।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -

const arr1 = [[0,2],[5,10],[13,23],[24,25]]; 
const arr2 = [[1,5],[8,12],[15,24],[25,26]];

तो आउटपुट होना चाहिए -

const output = [[1,2],[5,5],[8,10],[15,23],[24,24],[25,25]];

उदाहरण

इसके लिए कोड होगा -

const arr1 = [[0,2],[5,10],[13,23],[24,25]]; 
const arr2 = [[1,5],[8,12],[15,24],[25,26]]; 
const findIntersection = function (A, B) { 
  const res = []; 
  let i = 0; 
  let j = 0; 
  while (i < A.length && j < B.length) { 
    const [a, b] = A[i]; 
    const [c, d] = B[j]; 
    const lo = Math.max(a, c); 
    const hi = Math.min(b, d); 
    if (lo <= hi) { 
      res.push([Math.max(a, c), Math.min(b, d)]); 
    } 
    if (b < d) { 
      i++; 
    } else { 
      j++; 
    } 
  } 
  return res; 
}; 
console.log(findIntersection(arr1, arr2));

आउटपुट

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

[ 
  [ 1, 2 ], 
  [ 5, 5 ], 
  [ 8, 10 ], 
  [ 15, 23 ], 
  [ 24, 24 ], 
  [ 25, 25 ] 
]

  1. JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स

    const ES2015 (ES6) में पेश किया गया एक ब्लॉक-स्कोप्ड वेरिएबल डिक्लेरेशन है जो रीअसाइनमेंट को रोकता है। यह आधुनिक JavaScript में डिफ़ॉल्ट विकल्प होना चाहिए जब रीअसाइनमेंट की आवश्यकता न हो। उदाहरण { try { a = 44; // TypeError: Assignment to constant variable } catch (e

  1. - JavaScript में मैट्रिक्स में शब्द ढूंढना (Word Search in Matrix)

    हमें एक JavaScript फ़ंक्शन लिखना है जो पहले तर्क के रूप में वर्णों की सरणियों की एक सरणी और दूसरे तर्क के रूप में एक स्ट्रिंग लेता है। फ़ंक्शन को यह ढूंढना चाहिए कि क्या मैट्रिक्स में ऐसे वर्ण मौजूद हैं, जिनका गैर-दोहराव वाला संयोजन फ़ंक्शन को दूसरे तर्क के रूप में प्रदान की गई स्ट्रिंग को उत्पन्न

  1. - JavaScript में तीन क्रमबद्ध सरणियों का प्रतिच्छेदन

    हमें एक JavaScript फ़ंक्शन लिखना है जो पूर्णांकों की तीन सरणी लेता है जो सभी बढ़ते क्रम में क्रमबद्ध हैं। फ़ंक्शन को तब एक सरणी बनाकर लौटानी चाहिए जिसमें केवल वे तत्व हों जो तीनों सरणियों में मौजूद हैं। उदाहरण यदि इनपुट सरणियां हैं: const arr1 = [4, 7, 8, 11, 13, 15, 17]; const arr2 = [1, 3, 4, 13,