इस लेख में, हम सीखेंगे कि कैसे हम पायथन 3.x में काउंटर () फ़ंक्शन का उपयोग करके एक स्ट्रिंग को एक पैंग्राम में बना सकते हैं। या जल्दी। ऐसा करने के लिए हमें इनपुट स्ट्रिंग से किसी भी वर्ण को हटाने की अनुमति है। हम स्ट्रिंग को विपर्यय बनाने के लिए हटाए जाने वाले ऐसे आवश्यक वर्णों की संख्या भी ज्ञात करेंगे।
दो स्ट्रिंग्स को एक-दूसरे के विपर्ययण कहा जाता है जब उनमें किसी भी यादृच्छिक क्रम में एक ही प्रकार के अक्षर होते हैं।
काउंटर () विधि पायथन में उपलब्ध संग्रह मॉड्यूल में मौजूद है। काउंटर () फ़ंक्शन का उपयोग करने के लिए संग्रह मॉड्यूल को आयात करने के लिए पूर्वापेक्षा है।
एल्गोरिदम
1. Conversion of input string into a dictionary type having characters as keys and their frequency as values using Counter(inp_str) available in the collections module. 2. Counting the total number of keys and counting the number of keys in common to both dictionaries converted from input strings. 3. If no common keys are detected this means there is a need for removal of (sum of the length of both dictionaries) characters from both the input strings. 4. otherwise (max(length of both dictionaries) – number of Common keys available ) will give the required number of characters to be removed
संग्रह। काउंटर दुभाषिया द्वारा अक्षरों की स्वचालित गिनती सुनिश्चित करने के लिए एक शब्दकोश उपवर्ग है। हमें वास्तव में सबस्ट्रिंग बनाने या यह जांचने की ज़रूरत नहीं है कि क्या वे मैन्युअल रूप से एनाग्राम हैं।
उदाहरण
# two strings become anagram from collections import Counter def convertAnagram(str_1, str_2): # conversion of strings to dictionary type dict_1 = Counter(str_1) dict_2 = Counter(str_2) keys_1 = dict_1.keys() keys_2 = dict_2.keys() # count number of keys in both lists of keys count_1 = len(keys_1) count_2 = len(keys_2) # convert pair of keys into set to find common keys set_1 = set(keys_1) commonKeys = len(set_1.intersection(keys_2)) if (commonKeys == 0): # no common things found i.e. all are distinct return (count_1 + count_2) else: # some elements are already matching in input return (max(count_1, count_2)-commonKeys) str_1 ='Tutorials' str_2 ='sTutalori' str_3='Point' print (convertAnagram(str_1, str_2)) print (convertAnagram(str_3, str_2))
आउटपुट
0 6
निष्कर्ष
इस लेख में, हमने सीखा कि कैसे हम विपर्यय संबंध को बनाए रखने के लिए आवश्यक वर्णों की संख्या की गणना करके एक दूसरे के दो स्ट्रिंग विपर्यय बना सकते हैं पायथन 2.x। जरूरत है।