কম্পিউটার টিউটোরিয়াল

পাইথনে ক্রমাগত ডুপ্লিকেট সরিয়ে ফেলুন


मान लीजिए हमारे पास एक स्ट्रिंग s है, जिसमें केवल "R" और "L" हैं, हमें न्यूनतम संख्या में वर्णों को हटाना है ताकि कोई क्रमागत "R" और कोई क्रमागत "L" न रहे।

यदि इनपुट "LLLRLRR" जैसा है, तो आउटपुट "LRLR" होगा।

इसे हल करने के लिए हम निम्नलिखित चरणों का पालन करेंगे:

  • seen := s का पहला वर्ण
  • ans := s का पहला वर्ण
  • सूचकांक 1 से s के अंत तक प्रत्येक वर्ण i के लिए, करें:
    • यदि i, seen के समान नहीं है, तो
      • ans := ans + i
      • seen := i
  • ans लौटाएं

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

उदाहरण

class Solution:
    def solve(self, s):
        seen = s[0]
        ans = s[0]
        for i in s[1:]:
            if i != seen:
                ans += i
                seen = i
        return ans

ob = Solution()
print(ob.solve("LLLRLRR"))

इनपुट

"LLLRLRR"

आउटपुट

LRLR

  1. পাইথনে সোর্টেড অ্যারে থেকে ডুপ্লিকেট রিমুভ (Remove Duplicates from Sorted Array)

  2. পাইথনে লিস্ট থেকে ডুপ্লিকেট এলিমেন্ট সরানো

  3. পাইথনে বাক্য থেকে ডুপ্লিকেট শব্দ সরিয়ে ফেলার প্রোগ্রাম

  4. পাইথনে দেওয়া স্ট্রিং থেকে সব ডুপ্লিকেট সরিয়ে ফেলার প্রোগ্রাম