हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो दो स्ट्रिंग्स में लेता है। आइए उन्हें str1 औरstr2 कहते हैं। फ़ंक्शन को तब सबसे लंबी लगातार स्ट्रिंग का पता लगाना चाहिए जो दोनों इनपुट स्ट्रिंग्स के लिए सामान्य है और उस सामान्य स्ट्रिंग को वापस कर दें।
उदाहरण के लिए -
यदि इनपुट स्ट्रिंग्स हैं -
const str1 = 'ABABC'; const str2 = 'BABCA';
तब आउटपुट स्ट्रिंग होनी चाहिए -
const output = 'BABC';
उदाहरण
निम्नलिखित कोड है -
const str1 = 'ABABC'; const str2 = 'BABCA'; const findCommon = (str1 = '', str2 = '') => { const s1 = [...str1]; const s2 = [...str2]; const arr = Array(s2.length + 1).fill(null).map(() => { return Array(s1.length + 1).fill(null); }); for (let j = 0; j <= s1.length; j += 1) { arr[0][j] = 0; } for (let i = 0; i <= s2.length; i += 1) { arr[i][0] = 0; } let len = 0; let col = 0; let row = 0; for (let i = 1; i <= s2.length; i += 1) { for (let j = 1; j <= s1.length; j += 1) { if (s1[j - 1] === s2[i - 1]) { arr[i][j] = arr[i - 1][j - 1] + 1; } else { arr[i][j] = 0; } if (arr[i][j] > len) { len = arr[i][j]; col = j; row = i; } } } if (len === 0) { return ''; } let res = ''; while (arr[row][col] > 0) { res = s1[col - 1] + res; row -= 1; col -= 1; } return res; }; console.log(findCommon(str1, str2));
आउटपुट
कंसोल पर आउटपुट निम्नलिखित है -
BABC