Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन 3.x में काउंटर () का उपयोग करना। दो तार विपर्यय बनाने के लिए न्यूनतम वर्ण हटाने को खोजने के लिए

इस लेख में, हम सीखेंगे कि कैसे हम पायथन 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। जरूरत है।


  1. पायथन का उपयोग करके दो भूखंडों को साथ-साथ कैसे बनाया जाए?

    सबप्लॉट (पंक्ति, कॉल, इंडेक्स) विधि का उपयोग करके, हम एक आकृति को पंक्ति * कॉल भागों में विभाजित कर सकते हैं, और सूचकांक स्थिति पर आकृति को प्लॉट कर सकते हैं। निम्नलिखित कार्यक्रम में, हम एक ही आकृति में दो आरेख बनाएंगे। कदम numpy का उपयोग करके x, y1, y2 अंक बनाना। nrows =1, ncols =2, index =1

  1. दो स्ट्रिंग्स से असामान्य शब्द खोजने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें दो तार दिए गए हैं, हमें दिए गए तार से असामान्य शब्द निकालने होंगे। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें - उदाहरण # uncommon words def find(A, B):    # count    count = {}   &n

  1. पायथन में रेगेक्स का उपयोग करके दो तारों की तुलना कैसे करें?

    हम निम्नलिखित कोड का उपयोग करके दिए गए स्ट्रिंग्स की तुलना कर सकते हैं उदाहरण import re s1 = 'Pink Forest' s2 = 'Pink Forrest' if bool(re.search(s1,s2))==True:    print 'Strings match' else:    print 'Strings do not match' आउटपुट यह आउटपुट देता है