हमें Python में जांचना है कि किसी स्ट्रिंग के दो हिस्सों में वर्णों का समान समूह है या नहीं। दोनों हिस्सों में वर्णों की आवृत्ति समान होनी चाहिए। यदि स्ट्रिंग की लंबाई विषम है, तो मध्य को अनदेखा करें और शेष वर्णों की जांच करें। प्रोग्राम के लिए कोड लिखने के लिए नीचे दिए गए चरणों का पालन करें।
एल्गोरिदम
1. एक स्ट्रिंग इनिशियलाइज़ करें।
2. एक खाली डिक्शनरी वेरिएबल alphabets इनिशियलाइज़ करें।
3. लंबाई / 2 के साथ एक वेरिएबल mid इनिशियलाइज़ करें।
4. मध्य एलिमेंट तक लूप लिखें।
4.1. यदि यह इनिशियलाइज़ नहीं है तो संबंधित डिक्शनरी आइटम को alphabets[char] से एक से इनिशियलाइज़ करें।
4.2. यदि यह पहले से इनिशियलाइज़ है, तो काउंट को 1 से बढ़ाएं।
5. मध्य एलिमेंट से अंतिम आइटम तक लूप चलाएं।
5.1. जांचें कि char डिक्शनरी में है या नहीं।
5.1.1. यदि यह डिक्शनरी में है तो char की काउंट को एक से घटाएं।
6. डिक्शनरी alphabets पर लूप चलाएं।
6.1. यदि आपको 0 से अधिक मान वाला कोई आइटम मिलता है।
6.1.1. **No!** प्रिंट करें।
6.2. अन्यथा Yes! प्रिंट करें।आइए कोड लिखें।
उदाहरण
## स्ट्रिंग इनिशियलाइज़ करें
string = "aabccbaa"
## खाली डिक्शनरी इनिशियलाइज़ करें
alphabets = {}
## mid वेरिएबल इनिशियलाइज़ करें
mid = len(string) // 2
## पहली छमाही में char की आवृत्ति गिनने के लिए लूप
for i in range(mid):
## यदि यह डिक्शनरी में नहीं है तो char की काउंट को 1 पर सेट करें
if not alphabets.get(string[i], 0):
alphabets[string[i]] = 1
else:
## यदि यह पहले से इनिशियलाइज़ है तो char की काउंट को 1 से बढ़ाएं
alphabets[string[i]] += 1
## स्ट्रिंग के दूसरे भाग में मौजूद होने पर char की काउंट को 1 से घटाने के लिए लूप
for i in range(len(string) - 1, mid - 1, -1):
## जांचें कि char दूसरे भाग में है या नहीं
if alphabets.get(string[i], 0):
## यदि मौजूद है, तो काउंट को 1 से घटाएं
alphabets[string[i]] -= 1
## ट्रैक के लिए फ्लैग वेरिएबल इनिशियलाइज़ करें
flag = 1
## घटाने के बाद मानों की जांच के लिए लूप
for i in alphabets.values():
## शून्य की जांच
if i != 0:
## यदि यह शून्य नहीं है तो लूप तोड़ें और No! प्रिंट करें
print("No!")
## ट्रैक के लिए 0 सेट करें
flag = 0
break
## यदि फ्लैग मान अभी भी 1 है, तो यह Yes! है
if flag == 1:
## Yes! प्रिंट करें
print("Yes!")आउटपुट
यदि आप उपरोक्त प्रोग्राम चलाते हैं, तो आपको निम्न आउटपुट मिलेगा।
Yes!
निष्कर्ष
यदि ट्यूटोरियल के संबंध में आपके कोई संदेह हैं, तो उन्हें कमेंट सेक्शन में उल्लेख करें।