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

पायथन में दो स्ट्रिंग्स से अंतिम स्ट्रिंग बनने की जांच करने का प्रोग्राम


मान लीजिए हमारे पास दो स्ट्रिंग्स s, t, और एक अन्य स्ट्रिंग r है हमें जांचना है कि क्या s और t से क्रम में वर्णों को मर्ज करके r प्राप्त करने का कोई तरीका है।

इसलिए, यदि इनपुट s = "xyz" t = "mno" r = "xymnoz" जैसा है, तो आउटपुट True होगा, क्योंकि xymnoz को xyz और mno को इंटरलीव करके बनाया जा सकता है।

हल करने के चरण

  • solve() फ़ंक्शन परिभाषित करें। यह s, t, r लेगा

    • यदि s, t और r खाली हैं, तो True लौटाएं

    • यदि r खाली है, तो False लौटाएं

    • यदि s खाली है, तो t == r हो तो true लौटाएं अन्यथा false

    • यदि t शून्येतर नहीं है, तो s == r लौटाएं

    • यदि s[0], r[0] के समान है, तो

      • यदि solve(s[1:], t, r[1:]) true है, तो True लौटाएं

    • यदि t[0], r[0] के समान है, तो

      • यदि solve(s, t[1:], r[1:]) true है, तो True लौटाएं

    • False लौटाएं

उदाहरण

class Solution:
    def solve(self, s, t, r):
        if not s and not t and not r:
            return True
        if not r:
            return False
        if not s:
            return t == r
        if not t:
            return s == r
        if s[0] == r[0]:
            if self.solve(s[1:], t, r[1:]):
                return True
        if t[0] == r[0]:
            if self.solve(s, t[1:], r[1:]):
                return True
        return False

ob = Solution()
s = "xyz"
t = "mno"
r = "xymnoz"
print(ob.solve(s, t, r))

इनपुट

"xyz", "mno", "xymnoz"

आउटपुट

True
  1. Python में दो ट्री नोड्स को स्वैप करके बनाए जा सकते हैं या नहीं, इसकी जांच करने का प्रोग्राम Python में दो ट्री नोड्स को स्वैप करके बनाए जा सकते हैं या नहीं, इसकी जांच करने का प्रोग्राम

    मान लीजिए हमारे पास दो ट्री हैं, हमें यह जांचना है कि क्या हम पहले ट्री को दूसरे में किसी भी नोड के बाएं और दाएं सबट्री को कितनी भी बार स्वैप करके बदल सकते हैं। तो, यदि इनपुट इस तरह है तो आउटपुट True होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे: que1 := root0 के साथ प्रारंभ एक कतार que2

  1. - पायथन प्रोग्राम: चेक करना कि दी गई स्ट्रिंग हेटेरोग्राम है या नहीं

    यहां एक स्ट्रिंग दी गई है फिर हमारा कार्य चेक करना है कि दी गई स्ट्रिंग हेटेरोग्राम है या नहीं।हेटेरोग्राम चेक करने का अर्थ है कि एक शब्द, वाक्यांश, या वाक्य जिसमें अल्फाबेट का कोई भी अक्षर एक से अधिक बार नहीं आता। हेटेरोग्राम को पैंग्राम से अलग किया जा सकता है जो अल्फाबेट के सभी अक्षरों का उपयोग कर

  1. - Python का उपयोग करके स्ट्रिंग पैलिंड्रोम है या नहीं जांचें

    Python में पैलिंड्रोम स्ट्रिंग जांचना Python के मानक पुस्तकालय से reveresed() फ़ंक्शन का उपयोग करें। यह उल्टा ऑब्जेक्ट लौटाता है जिसे सूची ऑब्जेक्ट में बदला जा सकता है। >>> str1 = malayalam >>> l1 = list(reversed(str1)) >>> l1 [m, a, l, a, y, a, l, a, m] join() मेथड का उ