समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो पहले और दूसरे तर्क के रूप में शाब्दिक, arr1 और arr2 के दो सरणी लेता है।
हमारे फ़ंक्शन को सामान्य तत्व का पता लगाना चाहिए arr1 और arr2 में न्यूनतम सूची अनुक्रमणिका के साथ . यदि उत्तरों के बीच कोई विकल्प टाई है, तो हमें उन सभी को बिना किसी आदेश की आवश्यकता के आउटपुट देना चाहिए।
उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है-
const arr1 = ['a', 'b', 'c', 'd']; const arr2 = ['d', 'a', 'c'];
तब आउटपुट होना चाहिए -
const output = ['a'];
आउटपुट स्पष्टीकरण
चूँकि 'd' और 'a' दोनों सरणियों में सामान्य हैं, इसलिए 'd' का सूचकांक योग 3 + 0 =3 है और 'a' का 0 + 1 =1 है, इसलिए 'a' आवश्यक तत्व है।पी>
उदाहरण
निम्नलिखित कोड है -
const arr1 = ['a', 'b', 'c', 'd']; const arr2 = ['d', 'a', 'c']; const findCommon = (arr1 = [], arr2 = []) => { let sum = Infinity const map = arr1.reduce((acc, str, index) => { acc[str] = index return acc }, {}) for (let i = 0; i < arr2.length; i++) { const index1 = map[arr2[i]] if (index1 >= 0 && index1 + i < sum) { sum = index1 + i } } const result = [] for (let i = 0; i < arr2.length; i++) { const index1 = map[arr2[i]] if (index1 >= 0 && index1 + i === sum) { result.push(arr2[i]) } } return result } console.log(findCommon(arr1, arr2));
आउटपुट
कंसोल आउटपुट निम्नलिखित है-
['a']