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

पायथन में स्ट्रिंग संपीड़न करने का कार्यक्रम

मान लीजिए कि हमारे पास एक स्ट्रिंग s है। हमें इस स्ट्रिंग को रन लेंथ एन्कोडिंग फॉर्म में संपीड़ित करना होगा। इसलिए जब किसी वर्ण को k संख्या को लगातार 'bbbb' की तरह दोहराया जाता है, तो अक्षर 'b' को लगातार चार बार दोहराया जाता है, इसलिए एन्कोडेड रूप 'b4' होगा। एकल वर्णों के लिए हम इसमें गिनती नहीं जोड़ेंगे।

इसलिए, यदि इनपुट s ="abbbaaaaaaacdaaab" जैसा है, तो आउटपुट ab3a6c2da3b

होगा

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

  • res:=रिक्त स्ट्रिंग
  • सीएनटी:=1
  • i के लिए 1 से लेकर s-1 के आकार तक के लिए
    • यदि s[i - 1], s[i] के समान है, तो
      • सीएनटी:=सीएनटी + 1
    • अन्यथा,
      • res :=res concatenate s[i - 1]
      • अगर cnt> 1, तो
        • res :=res concatenate cnt
      • सीएनटी:=1
  • res :=res + s का अंतिम वर्ण
  • अगर cnt> 1, तो
    • res :=res concatenate cnt
  • रिटर्न रेस

उदाहरण

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

def solve(s):
   res = ""
   cnt = 1
   for i in range(1, len(s)):
      if s[i - 1] == s[i]:
         cnt += 1
      else:
         res = res + s[i - 1]
         if cnt > 1:
            res += str(cnt)
         cnt = 1
   res = res + s[-1]
   if cnt > 1:
      res += str(cnt)
   return res

s = "abbbaaaaaaccdaaab"
print(solve(s))

इनपुट

"abbbaaaaaaccdaaab"

आउटपुट

ab3a6c2da3b

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

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक हेक्साडेसिमल स्ट्रिंग दी गई है, हमें इसे इसके दशमलव समकक्ष में बदलने की जरूरत है। समस्या को हल करने के लिए हमारे पास दो दृष्टिकोण हैं- क्रूर-बल दृष्टिकोण अंतर्निहित मॉड्यूल का उपयोग करना ब्रूट-फोर्स मेथड

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

    इस मामले में हम पाइथन में री मॉड्यूल का उपयोग करते हैं, यहां हम एक स्ट्रिंग स्वीकार करते हैं और जांचते हैं कि स्ट्रिंग में चींटी यूआरएल है या नहीं। यदि URL स्ट्रिंग में मौजूद है तो प्रदर्शित करें। हम इस समस्या को हल करने के लिए findall () पद्धति का उपयोग करते हैं। एल्गोरिदम Step 1: given string as i

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

    उपयोगकर्ता इनपुट स्ट्रिंग और उस स्थिति से स्थिति को देखते हुए हमें वर्णों को वर्णानुक्रम में स्ट्रिंग की लंबाई तक दर्पण करने की आवश्यकता है। इस ऑपरेशन में, हम a को z, b से y, c से x, d से w में बदलते हैं और इसी तरह से पहला कैरेक्टर आखिरी हो जाता है और इसी तरह चालू। Inpu t: p = 3 Input string = p