संख्या प्रणाली में, दो संख्याओं का महत्तम सामान्य भाजक (GCD) वह सबसे बड़ी संख्या होती है जो दोनों संख्याओं को विभाजित करती है। इसी अवधारणा को स्ट्रिंग्स पर लागू करें तो दो स्ट्रिंग्स का GCD वह सबसे बड़ा उपस्ट्रिंग (लंबाई में सबसे बड़ा) होता है जो दोनों स्ट्रिंग्स में मौजूद हो।
उदाहरण के लिए:
यदि दो स्ट्रिंग्स हैं:
const str1 = 'abcabc'; const str2 = 'abc';
तो इन स्ट्रिंग्स का GCD होगा:
const gcd = 'abc';
हमें एक JavaScript फ़ंक्शन लिखना है जो दो स्ट्रिंग्स str1 और str2 लेता है और उनका GCD गणना करके वापस करता है।
कोड
const str1 = 'abcabc'; const str2 = 'abc'; const findGCD = (str1 = '', str2 = '') => { if (str1 + str2 !== str2 + str1){ // संभव नहीं // कोई सामान्य तत्व नहीं return ""; } else if (str1 == str2){ return str1; } else if (str1.length > str2.length){ return findGCD(str1.slice(str2.length), str2); } else { return findGCD(str2.slice(str1.length), str1); } }; console.log(findGCD(str1, str2));आउटपुट
कंसोल में आउटपुट होगा:
abc