दो स्ट्रिंग्स 'ए' और स्ट्रिंग 'बी' को देखते हुए, हमें यह जांचना होगा कि वे एक-दूसरे के विपर्यय हैं या नहीं और सही/गलत लौटाते हैं। उदाहरण के लिए,
इनपुट-1 -
स्ट्रिंग ए="इंडिया"स्ट्रिंग बी="निदिया"
आउटपुट -
सच
स्पष्टीकरण - चूंकि दिए गए स्ट्रिंग 'बी' में स्ट्रिंग 'ए' में सभी वर्ण शामिल हैं, इसलिए हम ट्रू वापस आ जाएंगे।
इनपुट-2 -
स्ट्रिंग ए="हैकाथॉन"स्ट्रिंग बी="अचथून"
आउटपुट -
<पूर्व>गलतस्पष्टीकरण - चूंकि दिए गए स्ट्रिंग 'बी' में स्ट्रिंग 'ए' के रूप में सभी वर्ण नहीं हैं, इसलिए हम झूठी वापसी करेंगे।
इस समस्या को हल करने के लिए इस्तेमाल किया जाने वाला तरीका
दिए गए स्ट्रिंग्स 'ए' और 'बी' में, हम जांच करेंगे कि क्या वे समान लंबाई के हैं और फिर हम स्ट्रिंग्स को सॉर्ट करेंगे। यदि दोनों तार बराबर हैं, तो "सत्य" लौटाएं; यदि नहीं, तो "गलत" प्रिंट करें।
-
इनपुट दो स्ट्रिंग्स 'ए' और 'बी' लें
-
एक फ़ंक्शन checkStringAnagrams(string a, string b) जो एक दूसरे के विपर्यय अन्यथा असत्य होने पर सत्य वापस आ जाएगा।
-
दोनों स्ट्रिंग्स की लंबाई ज्ञात करें और जांचें कि क्या वे समान हैं।
-
अब दोनों स्ट्रिंग्स को लेक्सिकोग्राफिक रूप से क्रमबद्ध करें और जांचें कि वे बराबर हैं या नहीं।
-
तदनुसार सही या गलत लौटें।
उदाहरण
फ़ंक्शन checkStringsAnagram(a, b) { let len1 =a.length; चलो len2 =b.लंबाई; if(len1!==len2){ कंसोल.लॉग('अमान्य इनपुट'); वापसी} चलो str1 =a.split('').sort().join(''); चलो str2 =b.split('').sort().join(''); अगर (str1 ===str2) {कंसोल। लॉग ("ट्रू"); } और { कंसोल.लॉग ("गलत"); }}checkStringsAnagram("indian",,"indiani")
आउटपुट
उपरोक्त कोड को चलाने से आउटपुट इस प्रकार उत्पन्न होगा,
सच
चूंकि स्ट्रिंग 'इंडियन' में अन्य स्ट्रिंग 'इंडियानी' के समान वर्णों का सेट है, दोनों एक-दूसरे के विपर्यय हैं, और इसलिए, और हम ट्रू वापस आ जाएंगे।