Đưa ra một chuỗi, hãy viết một chức năng Python để kiểm tra xem nó có phải là palindrom hay không. Một chuỗi được cho là palindrom nếu mặt trái của chuỗi giống như chuỗi. Ví dụ, radar radar là một palindrom, nhưng radix radix không phải là một palindrom.
Examples:
Input : malayalam Output : Yes Input : geeks Output : No
Phương pháp #1 & NBSP;
- Tìm ngược lại chuỗi
- Kiểm tra nếu đảo ngược và nguyên bản là giống nhau hay không.
Python
def
isPalindrome[s]:
Yes0
Yes1
Yes2
Yes2
Yes4
Yes5
Yes6
Yes7
Yes1
Yes2
Yes0
Yes1
Yes2
Yes3
Yes4
Yes5
Yes7
Yes8
Yes9
Yes0
Yes1
Yes2
Yes7
Yes8
Yes6
Yes0
Đầu ra: & nbsp;
Yes
Độ phức tạp về thời gian: O [n]O[n]
Không gian phụ trợ: O [1]O[1]
Phương pháp lặp: Phương pháp này được đóng góp bởi Shariq Raza. Chạy một vòng từ bắt đầu đến chiều dài/2 và kiểm tra ký tự đầu tiên đến ký tự cuối cùng của chuỗi và thứ hai đến lần thứ hai cuối cùng và vân vân. Nếu bất kỳ nhân vật nào không phù hợp, chuỗi sẽ là một palindrom. This method is contributed by Shariq Raza. Run a loop from starting to length/2 and check the first character to the last character of the string and second to second last one and so on …. If any character mismatches, the string wouldn’t be a palindrome.
Dưới đây là việc thực hiện phương pháp trên: & nbsp;
Python
def
isPalindrome[s]:
Yes0
Yes1
Yes2
Yes2
Yes4
Yes5
Yes6
Yes7
Yes1
Yes2
Yes0
Yes1
Yes2
Yes3
Yes4
Yes5
Yes1
Yes2
Yes0
Yes1
Yes2
Yes3
Yes4
Yes5
Yes7
Yes8
Yes9
Yes0
Đầu ra: & nbsp;
Yes7
Yes8
Yes6
Yes0
Output:
Yes
Độ phức tạp về thời gian: O [n]O[n]
Không gian phụ trợ: O [1]O[1]
Phương pháp lặp: Phương pháp này được đóng góp bởi Shariq Raza. Chạy một vòng từ bắt đầu đến chiều dài/2 và kiểm tra ký tự đầu tiên đến ký tự cuối cùng của chuỗi và thứ hai đến lần thứ hai cuối cùng và vân vân. Nếu bất kỳ nhân vật nào không phù hợp, chuỗi sẽ là một palindrom. inbuilt function to reverse a string:
Dưới đây là việc thực hiện phương pháp trên: & nbsp;‘ ‘.join[reversed[string]] is used to reverse string.
def
Yes9
Yes0
Yes1
Python
def
isPalindrome[s]:
Yes0
Yes1
Yes2
Yes2
Yes4
Yes5
Yes6
Yes7
Yes1
Yes2
Yes0
Yes1
Yes2
Yes3
Yes4
Yes5
Yes1
Yes2
Yes0
Yes1
Yes2
Yes3
Yes4
Yes5
Yes7
Yes8
Yes9
Yes0
Yes1
Yes2
Yes7
Yes8
Yes6
Yes0
Đầu ra: & nbsp;
Yes
Độ phức tạp về thời gian: O [n]O[n]
Không gian phụ trợ: O [1]O[n]
Phương pháp lặp: Phương pháp này được đóng góp bởi Shariq Raza. Chạy một vòng từ bắt đầu đến chiều dài/2 và kiểm tra ký tự đầu tiên đến ký tự cuối cùng của chuỗi và thứ hai đến lần thứ hai cuối cùng và vân vân. Nếu bất kỳ nhân vật nào không phù hợp, chuỗi sẽ là một palindrom. In this method, the user takes a character of string one by one and store it in an empty variable. After storing all the characters user will compare both the string and check whether it is palindrome or not.
Python
Dưới đây là việc thực hiện phương pháp trên: & nbsp;
def
Yes9
Yes0
Yes1
Yes3
Yes4___
Yes9
Yes4
Yes0
Yes2
Yes2
Yes0
Yes5
Yes22.
def
5
Yes0
def
7
Yes7
Yes8
Yes9
Yes0
Yes1
Yes2
Yes7
Yes8
Yes6
Yes0
Output:
Yes
Độ phức tạp về thời gian: O [n]O[n]
Không gian phụ trợ: O [1]O[n]
Phương pháp lặp: Phương pháp này được đóng góp bởi Shariq Raza. Chạy một vòng từ bắt đầu đến chiều dài/2 và kiểm tra ký tự đầu tiên đến ký tự cuối cùng của chuỗi và thứ hai đến lần thứ hai cuối cùng và vân vân. Nếu bất kỳ nhân vật nào không phù hợp, chuỗi sẽ là một palindrom. In this method, the user compares each character from starting and ending in a for loop and if the character does not match then it will change the status of the flag. Then it will check the status of the flag and accordingly and print whether it is a palindrome or not.
Python
Dưới đây là việc thực hiện phương pháp trên: & nbsp;
def
Yes9
Yes0
Yes1
Yes3
Yes4___
Yes9
Yes4
Yes0
Yes2
Yes2
Yes0
Yes5
Yes22.
def
5
Yes0
def
7
____10 isPalindrome[s]:
0
Yes9
Yes98
Yes4
isPalindrome[s]:
8Yes1
Yes2
Yes7
Yes8
Yes14
Yes0
Yes1
Yes2
Yes7
Yes8
Yes9
Yes0
Output:
Yes
Độ phức tạp về thời gian: O [n]O[n]
Không gian phụ trợ: O [1]O[1]
Phương pháp lặp: Phương pháp này được đóng góp bởi Shariq Raza. Chạy một vòng từ bắt đầu đến chiều dài/2 và kiểm tra ký tự đầu tiên đến ký tự cuối cùng của chuỗi và thứ hai đến lần thứ hai cuối cùng và vân vân. Nếu bất kỳ nhân vật nào không phù hợp, chuỗi sẽ là một palindrom.:
Dưới đây là việc thực hiện phương pháp trên: & nbsp;
Python3
def
isPalindrome[s]:
def
Yes9
Yes0
Yes1
Yes3
Yes4___
Yes9
Yes4
Yes0
Yes2
Yes2
Yes0
Yes5
Yes22.
Yes1
Yes2
Yes3
Yes4
Yes5
Đầu ra: & nbsp;
Yes1
Yes2
Yes9
Yes0
def
7Yes1
Yes2
Yes69
Yes1
Yes2
Yes3
Yes4
Yes5
Yes7
Yes8
Yes9
Yes0
Yes1
Yes2
Yes7
Yes8
Yes6
Yes0
Output:
Yes
Độ phức tạp về thời gian: O [n]O[n]
Không gian phụ trợ: O [n]O[n]
Phương pháp: Sử dụng các phương thức mở rộng [] và Reverse []
Python3
def
isPalindrome[s]:
Yes90
Yes2
Yes92
Yes33
Yes95
Yes2
Yes97
Yes99
Yes01
Yes4
Yes04
Yes2
Yes2
Yes07
Yes9____10
isPalindrome[s]:
0
____10 def
7
Yes1
Yes2
Yes0
Yes1
Yes2
Yes3
Yes4
Yes5
Yes7
Yes8
Yes9
Yes0
Yes1
Yes2
Yes7
Yes8
Yes6
Yes0
Độ phức tạp về thời gian: O [n]Sahil Rajput. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to . See your article appearing on the GeeksforGeeks main page and help other Geeks.
Không gian phụ trợ: O [n]