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

पायथन में रन-लेंथ फॉर्म की स्ट्रिंग को सामान्य फॉर्म में डिकोड करने का प्रोग्राम


मान लीजिए हमारे पास एक स्ट्रिंग s है। s एक रन-लेंथ एन्कोडेड स्ट्रिंग है, हमें इसका डिकोड किया गया संस्करण ढूंढना है। जैसा कि हम जानते हैं, रन-लेंथ एन्कोडिंग स्ट्रिंग्स को एन्कोड करने की एक तेज और सरल विधि है। विचार इस प्रकार है: दोहराए गए क्रमिक तत्वों (वर्णों) को एकल गणना और वर्ण के रूप में। उदाहरण के लिए, यदि स्ट्रिंग "BBBBAAADDCBB" जैसी है तो इसे "4B3A2D1C2B" के रूप में एन्कोड किया जाएगा।

उदाहरण के लिए, यदि इनपुट है s = "4B3A2D1C2B", तो आउटपुट होगा "BBBBAAADDCBB"।

हल करने के चरण

  • output := खाली स्ट्रिंग।
  • num := खाली स्ट्रिंग।
  • s में प्रत्येक वर्ण i के लिए:
    • यदि i वर्णमाला है, तो:
      • output := output + i * (num को संख्या के रूप में)
      • num := खाली स्ट्रिंग।
    • अन्यथा, num := num + i।
  • output लौटाएं।

उदाहरण

class Solution:
    def solve(self, s):
        output = ""
        num = ""
        for i in s:
            if i.isalpha():
                output += i * int(num)
                num = ""
            else:
                num += i
        return output

ob = Solution()
print(ob.solve("4B3A2D1C2B"))

इनपुट

"4B3A2D1C2B"

आउटपुट

BBBBAAADDCBB
  1. - पायथन प्रोग्राम: लिस्ट को स्ट्रिंग में बदलें

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

  1. - पायथन प्रोग्राम: मैट्रिक्स को Z फॉर्म में प्रिंट करें

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

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

    समस्या विवरण पायथन को इस तरह के रूपांतरण की बहुत आवश्यकता होती है। उदाहरण के लिए, ऐसे रूपांतरण सीरियलाइज़ेशन उद्देश्यों के लिए उपयोगी होते हैं। ऐसे रूपांतरण का एक उदाहरण होगा: [h, e, l, l, o, , w, o, r, l, d] से hello world पायथन में एक join मेथड होता है जिसका उपयोग ऐसे रूपांतरण के लिए किया जा सकत