检查字符串的后缀和前缀是否是 Python 中的回文
假设我们有一个字符串 s,我们必须检查字符串是否是回文作为它的前缀和后缀的子串。
因此,如果输入类似于 s = "levelishighforracecar",那么输出将为 True,因为分别有回文前缀和后缀:"level" 和 "racecar"。
为了解决这个问题,我们将按照以下步骤操作 -
- l := s的大小 
- 对于 2 到 l + 2 范围内的 i,执行 
- 如果从索引 (l - i) 到 (l - 1) 的 s 子串是回文,则 
- 返回真 
- 返回错误 
- 从循环中出来 
- 如果 s 到索引 i 的子串是回文,则 
- 如果 i 与 (l + 1) 相同,则 
- 对于 2 到 l + 2 范围内的 i,执行 
- 返回错误 
让我们看看以下实现以获得更好的理解 -
示例代码
def is_palindrome(s):return s == s[::-1]
def solve(s):
l = len(s)
for i in range(2, l + 1):
if is_palindrome(s[0:i]):
break
if i == (l + 1):
return False
for i in range(2, l + 1):
if is_palindrome(s[l - i : l]):
return True
return False
s = "levelishighforracecar"
print(solve(s))
输入
"levelishighforracecar"输出结果
True
以上是 检查字符串的后缀和前缀是否是 Python 中的回文 的全部内容, 来源链接: utcz.com/z/347614.html







