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

स्ट्रिंग को k विशिष्ट विभाजनों में विभाजित करने के लिए पायथन कार्यक्रम

मान लीजिए कि हमारे पास एक स्ट्रिंग s और एक मान k है। k का मान s की लंबाई का गुणनखंड है, मान लीजिए कि लंबाई n है। हम s को n/k विभिन्न सबस्ट्रिंग्स में विभाजित कर सकते हैं जिन्हें t_i आकार k कहा जाता है। फिर इन t_i का उपयोग u_i को ऐसा बनाने के लिए करें कि

  • u_i में मौजूद वर्ण t_i में वर्णों के बाद होते हैं

  • इन स्ट्रिंग से कोई भी दोहराए गए वर्ण हटा दिए जाएंगे जैसे कि u_i में प्रत्येक वर्ण की आवृत्ति 1

    . है

हमें इन u_i स्ट्रिंग्स को ढूंढना है

इसलिए, यदि इनपुट s ="MMPQMMMRM" k =3 जैसा है, तो आउटपुट ["MP", "QM", "MR"] होगा क्योंकि s का आकार 9 है, और k 3 है, इसलिए 9/ 3 =3. स्ट्रिंग्स एमएमपी, क्यूएमएम और एमआरएम हैं, लेकिन चूंकि हम डुप्लीकेट वर्णों का समर्थन नहीं करते हैं, तो वे एमपी, क्यूएम और एमआर होंगे।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • मैं :=0
  • रिट:=एक नई सूची
  • सांसद:=एक नया नक्शा
  • to_print :=रिक्त स्ट्रिंग
  • जबकि मैं
  • यदि i mod k 0 के समान है और i 0 नहीं है, तो
    • रिटर्न के अंत में to_print डालें
    • एमपी साफ़ करें और टू_प्रिंट साफ़ करें
  • यदि s[i] एमपी में मौजूद नहीं है, तो
    • एमपी[एस[i]]:=0
    • to_print :=to_print + s[i]
  • i :=i + 1
  • रिटर्न के अंत में to_print डालें
  • रिटर्न रिटर्न
  • उदाहरण

    आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें

    def solve(s, k):
       i = 0
       ret = []
       mp, to_print = {}, ""
       while i < len(s):
          if i % k == 0 and i != 0:
             ret.append(to_print)
             mp, to_print = {}, ""
          if s[i] not in mp.keys():
             mp[s[i]] = 0
             to_print += s[i]
          i += 1
       ret.append(to_print)
       return ret
    
    s = "MMPQMMMRM"
    k = 3
    print(solve(s, k))

    इनपुट

    "MMPQMMMRM", 3
    

    आउटपुट

    ['MP', 'QM', 'MR']

    1. सूची को स्ट्रिंग में बदलने के लिए पायथन प्रोग्राम

      इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक सूची को देखते हुए हमें एक स्ट्रिंग प्रकार में बदलने की जरूरत है। यहां हम ऊपर दिए गए समस्या कथन को हल करने के लिए चार अलग-अलग तरीकों पर चर्चा करेंगे - दृष्टिकोण 1:रिक्त स्ट्रिंग में संयोजन का उ

    1. पायथन प्रोग्राम को विभाजित करने और एक स्ट्रिंग में शामिल होने के लिए?

      पायथन प्रोग्राम स्ट्रिंग में शामिल होने और स्ट्रिंग के विभाजन के लिए अंतर्निहित फ़ंक्शन प्रदान करता है। split Str.split() join Str1.join(str2) एल्गोरिदम Step 1: Input a string. Step 2: here we use split method for splitting and for joining use join function. Step 3: display output. उदाहरण कोड #

    1. वर्णों की सूची को एक स्ट्रिंग में बदलने के लिए पायथन प्रोग्राम

      पायथन को इस प्रकार के रूपांतरण की बहुत आवश्यकता होती है। उदाहरण के लिए, ऐसे रूपांतरण क्रमांकन उद्देश्यों के लिए उपयोगी होते हैं। ऐसे रूपांतरण का एक उदाहरण होगा - ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd&