(3)编程实现:判断给定字符串是否力回文。
时间: 2024-10-26 08:17:15 浏览: 28
LeetCode判断字符串是否循环-leetcode:每天做leetCode的题,每天努力学习。学习使我进步,学习使我快乐学习
判断一个字符串是否是回文,即正读和反读都一样,可以采用双指针法,从两端开始向中间遍历,同时比较对应的字符是否相等。这里是一个简单的Python示例:
```python
def is_palindrome(s):
# 将字符串转为小写并移除非字母数字字符
s = ''.join(filter(str.isalnum, s)).lower()
left, right = 0, len(s) - 1 # 初始化左右指针
while left < right:
if s[left] != s[right]: # 如果左右字符不相等,则不是回文
return False
left += 1 # 左指针向右移动
right -= 1 # 右指针向左移动
# 全部比较完毕,说明是回文
return True
# 测试
example_string = "A man, a plan, a canal: Panama"
print(is_palindrome(example_string)) # 输出:True
```
这个函数首先清理字符串中的非字母数字字符,并转换为小写,然后通过两个指针从两端向中心推进,遇到不相等的字符则返回False,否则如果所有字符都匹配则返回True。
阅读全文