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

पायथन में वैध पालिंड्रोम


मान लीजिए हमारे पास अल्फान्यूमेरिक मानों और प्रतीकों के साथ एक स्ट्रिंग है। लोअरकेस और अपरकेस अक्षर भी हैं। हमें जांचना है कि क्या स्ट्रिंग केवल लोअरकेस अक्षरों को ध्यान में रखते हुए पालिंड्रोम बना रही है या नहीं (अपरकेस को लोअरकेस में बदल दिया जाएगा), अन्य प्रतीकों जैसे कॉमा, स्पेस को नजरअंदाज किया जाएगा।

मान लीजिए स्ट्रिंग "A Man, a Plan, a Canal: Panama" जैसी है, तो इन नियमों को ध्यान में रखते हुए, यह "amanaplanacanalpanama" बनेगी। यह एक पालिंड्रोम है।

हल करने के चरण

  • x = "" परिभाषित करें
  • str में प्रत्येक वर्ण c पढ़ें
    • यदि c लोअरकेस अक्षर या संख्या है, तो c को x में जोड़ें
    • अन्यथा c अपरकेस अक्षर है, तो बस इसे लोअरकेस में बदलें और x के बाद जोड़ें
  • यदि x पालिंड्रोम है, तो True वापस करें, अन्यथा False

उदाहरण

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

class Solution(object):
    def isPalindrome(self, s):
        """
        :type s: str
        :rtype: bool
        """
        x = ""
        diff = ord('a') - ord('A')
        for i in s:
            if ord(i)>=ord('a') and ord(i)<=ord('z') or ord(i)>=ord("0") and ord(i)<=ord("9"):
                x+=i
            elif ord(i)>=ord('A') and ord(i)<=ord('Z'):
                i = chr(diff+ord(i))
                x+=i
        return x == x[::-1]

ob1 = Solution()
print(ob1.isPalindrome("A Man, a Plan, a Canal: Panama"))

इनपुट

s = "A Man, a Plan, a Canal: Panama"

आउटपुट

true

  1. - पायथन में वैध एनाग्राम

    एनाग्राम मूल रूप से किसी दिए गए स्ट्रिंग या पैटर्न के सभी क्रमपरिवर्तन हैं। यह पैटर्न खोज एल्गोरिदम थोड़ा अलग है। इस मामले में, न केवल सटीक पैटर्न खोजा जाता है, यह टेक्स्ट में दिए गए पैटर्न के सभी संभावित व्यवस्थाओं को खोजता है। यदि इनपुट ANAGRAM और NAAGARM हैं, तो वे एनाग्राम हैं, लेकिन cat और fat

  1. - पायथन में पालिंड्रोम संख्या

    मान लीजिए हमारे पास एक पूर्णांक है। हमें जांचना है कि पूर्णांक पालिंड्रोम है या नहीं। यदि पूर्णांक आगे या पीछे दोनों क्रम में समान है, तो संख्या पालिंड्रोम है। उदाहरण के लिए, मान लीजिए संख्या 454 है, यदि हम इसे उल्टा करते हैं तो यह फिर से 454 होगी। तो यह पालिंड्रोम है। अब यदि संख्या -565 है, तो उल्

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

    एक स्ट्रिंग दी गई है, हमारा कार्य यह जांचना है कि यह स्ट्रिंग पैलिंड्रोम है या नहीं। एल्गोरिदम चरण 1: इनपुट के रूप में स्ट्रिंग दर्ज करें। चरण 2: स्ट्रिंग स्लाइसिंग का उपयोग करके स्ट्रिंग को उल्टा करें और इसकी तुलना मूल स्ट्रिंग से करें। चरण 3: फिर परिणाम प्रदर्शित करें। उदाहरण कोड my_string = inpu