用Python函数来检查字符串是否为回文字符串
发布时间:2023-07-02 03:04:05
回文字符串是指正着读和倒着读都一样的字符串。我们可以编写一个Python函数来检查一个字符串是否是回文字符串。下面是一个简单的实现:
def is_palindrome(s):
# 去除字符串中的空格,并将所有字符转为小写
s = s.replace(" ", "").lower()
# 反转字符串
reversed_s = s[::-1]
# 比较原字符串和反转之后的字符串
if s == reversed_s:
return True
else:
return False
# 测试函数
print(is_palindrome("level")) # True
print(is_palindrome("hello")) # False
print(is_palindrome("A man a plan a canal Panama")) # True
在这个函数中,我们首先将字符串转为小写,并去除空格,这是因为回文字符串不区分大小写且忽略空格。然后,我们使用切片操作[::-1]来反转字符串。最后,我们比较原字符串和反转之后的字符串,如果相等,则返回True,否则返回False。
上述代码的时间复杂度为O(n),其中n是字符串长度。这是因为我们需要遍历字符串两次,一次是去除空格并转为小写,另一次是反转字符串。空间复杂度为O(n),其中n是字符串长度,因为我们需要创建一个新的字符串存储反转的结果。
