हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो बढ़ते क्रम में क्रमबद्ध पूर्णांकों के तीन सरणी लेता है। फ़ंक्शन को तब एक सरणी का निर्माण और वापसी करनी चाहिए जिसमें केवल वे तत्व हों जो तीनों सरणियों में मौजूद हों।
उदाहरण के लिए -
यदि इनपुट सरणियाँ हैं -
const arr1 = [4, 7, 8, 11, 13, 15, 17]; const arr2 = [1, 3, 4, 13, 18]; const arr3 = [2, 4, 7, 8, 9, 10, 13];
तब आउटपुट होना चाहिए -
const output = [4, 13];
उदाहरण
इसके लिए कोड होगा -
const arr1 = [4, 7, 8, 11, 13, 15, 17]; const arr2 = [1, 3, 4, 13, 18]; const arr3 = [2, 4, 7, 8, 9, 10, 13]; const intersectThree = (arr1 = [], arr2 = [], arr3 = []) => { let curr1 = 0; let curr2 = 0; let curr3 = 0; const res = []; while((curr1 < arr1.length) && (curr2 < arr2.length) && (curr3 < arr3.length)){ if((arr1[curr1] === arr2[curr2]) && (arr2[curr2] === arr3[curr3])){ res.push(arr1[curr1]); curr1++; curr2++; curr3++; } const max = Math.max(arr1[curr1], arr2[curr2], arr3[curr3]); if(arr1[curr1] < max){ curr1++; }; if(arr2[curr2] < max){ curr2++; }; if(arr3[curr3] < max){ curr3++; }; }; return res; }; console.log(intersectThree(arr1, arr2, arr3));
आउटपुट
और कंसोल में आउटपुट होगा -
[4, 13]