जब रिकर्सन तकनीक का उपयोग करके स्ट्रिंग पैलिंड्रोम है या नहीं जांचने की आवश्यकता होती है, तो सिंपल इंडेक्सिंग और एक यूज़र-डिफाइंड फ़ंक्शन, रिकर्सन के साथ उपयोग किया जाता है।
पैलिंड्रोम वे स्ट्रिंग्स या वैल्यूज़ हैं जिन्हें बाएं से दाएं और दाएं से बाएं पढ़ने पर उनके संबंधित इंडेक्स में समान कैरेक्टर्स होते हैं।
रिकर्सन बड़ी समस्या के छोटे-छोटे टुकड़ों का आउटपुट कंप्यूट करता है, और इन टुकड़ों को बड़ी समस्या का समाधान देने के लिए जोड़ता है।
इसके लिए एक प्रदर्शन नीचे दिया गया है:
उदाहरण
def check_palindrome(my_str):
if len(my_str) < 1:
return True
else:
if my_str[0] == my_str[-1]:
return check_palindrome(my_str[1:-1])
else:
return False
my_string = str(input("Enter the string :"))
print("The string is ")
print(my_string)
if check_palindrome(my_string) == True:
print("The string is a palindrome")
else:
print("The string isn't a palindrome")आउटपुट
Enter the string : MalaM The string is MalaM The string is a palindrome
व्याख्या
- 'check_palindrome' नामक एक मेथड एक स्ट्रिंग को पैरामीटर के रूप में लेता है।
- यदि स्ट्रिंग का आकार एक से कम है, तो आउटपुट के रूप में 'True' लौटाया जाता है।
- अन्यथा, स्ट्रिंग में अंतिम एलिमेंट की जांच की जाती है कि क्या यह पहले एलिमेंट से मेल खाता है।
- मेथड को दूसरे इंडेक्स से अंतिम इंडेक्स तक के एलिमेंट्स पर फिर से कॉल किया जाता है, जहां अंतिम इंडेक्स वैल्यू डिज़ाइन द्वारा एक्सक्लूड होगी।
- अन्यथा, फ़ंक्शन false लौटाता है।
- फ़ंक्शन के बाहर, यूज़र से स्ट्रिंग दर्ज करने के लिए कहा जाता है।
- यह स्ट्रिंग कंसोल पर प्रदर्शित की जाती है।
- मेथड को इस स्ट्रिंग को पैरामीटर के रूप में पास करके कॉल किया जाता है।
- यदि इसका मान 'True' कंप्यूट होता है, तो संबंधित मैसेज कंसोल पर प्रदर्शित किया जाता है।
- अन्यथा, एक अलग मैसेज कंसोल पर प्रदर्शित किया जाता है।