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

पायथन में स्ट्रिंग में सभी आसन्न डुप्लिकेट निकालें

मान लीजिए कि हमारे पास लोअरकेस अक्षरों का एक स्ट्रिंग S है; डुप्लिकेट हटाने का ऑपरेशन किया जाएगा। यह दो आसन्न और समान अक्षरों को चुनकर और उन्हें हटाकर किया जाएगा।

हम बार-बार S से डुप्लीकेट हटा देंगे जब तक कि कोई डुप्लीकेट न बचे।

इस तरह के सभी डुप्लिकेट निष्कासन पूर्ण होने के बाद स्ट्रिंग वापस करें। यह गारंटी है कि उत्तर अद्वितीय है।

मान लीजिए कि स्ट्रिंग "अब्बाकाका" है, तो उत्तर "काका" होगा। पहले डुप्लिकेट बीबी हटाएं, फिर स्ट्रिंग "आकाका" है, फिर आ को हटा दें, फिर स्ट्रिंग "काका" है, फिर ऐसा कोई डुप्लिकेट नहीं है।

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

  • एक सरणी सेंट परिभाषित करें, और मैं प्रारंभ करें:=0
  • जबकि मैं <स्ट्रिंग की लंबाई -
    • यदि st में कुछ तत्व है, और st =st[i] का अंतिम तत्व है, तो i को 1 से बढ़ाएँ और st से अंतिम तत्व को हटा दें
    • अन्यथा स्ट्रिंग [i] को सेंट में जोड़ें, i को 1 से बढ़ाएं
  • आखिरकार सेंट में सभी तत्वों को एक स्ट्रिंग के रूप में शामिल करें और वापस लौटें

उदाहरण

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

class Solution(object):
   def removeDuplicates(self, S):
      st = []
      i = 0
      while i < len(S):
         if len(st)!=0 and st[-1]==S[i]:
            i+=1
            st.pop(-1)
         else:
            st.append(S[i])
            i+=1
      return "".join(i for i in st)
ob1 = Solution()
print(ob1.removeDuplicates("abbacaca"))

इनपुट

"abbacaca"

आउटपुट

"caca"

  1. किसी दिए गए स्ट्रिंग के सभी क्रमपरिवर्तन मुद्रित करने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक स्ट्रिंग दी गई है जिसकी हमें स्ट्रिंग के सभी संभावित क्रमपरिवर्तन प्रदर्शित करने की आवश्यकता है। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें - उदाहरण # conversion def toString(List):    return &

  1. पायथन में स्ट्रिंग के सभी पिछली सफेद जगहों को कैसे हटाएं?

    हम विधि rstrip() का उपयोग कर सकते हैं जो स्ट्रिंग की एक प्रति देता है जिसमें सभी निर्दिष्ट वर्ण स्ट्रिंग के अंत से हटा दिए गए हैं। ट्रिम किया जाने वाला डिफ़ॉल्ट चार व्हाइटस्पेस है। उदाहरण के लिए: >>> '   Hello   '.rstrip() '   Hello' >>> 'Ninja Tu

  1. पायथन में स्ट्रिंग में सभी प्रमुख सफेद जगहों को कैसे हटाएं?

    Lstrip () विधि एक स्ट्रिंग की शुरुआत में प्रमुख व्हाइटस्पेस, न्यूलाइन और टैब वर्णों को हटा देगी। आप इसे निम्न तरीके से उपयोग कर सकते हैं: >>> '     hello world!'.lstrip() 'hello world!' आप एक ही तरीके से पिछली और अग्रणी व्हाइटस्पेस दोनों को हटाने के लिए स्ट्रिप()