用 Python 编写程序检查字符串的两个部分是否为回文
pythonserver side programmingprogramming更新于 2026/1/12 9:48:17
假设我们有两个长度相同的字符串 S 和 T,我们必须检查是否有可能在一个公共点处切断两个字符串,以便 S 的第一部分和 T 的第二部分形成回文。
因此,如果输入为 S = "cat" T = "pac",则输出将为 True,因为如果我们将字符串切成 "c" + "at" 和 "d" + "ac",则 "c" + "ac"是回文。
为了解决这个问题,我们将遵循以下步骤 −
n := a 的大小
i := 0
当 i < n 且 a[i] 与 b[n-i-1] 相同时,则
i := i + 1
当 a[从索引 i 到 n-i-1] 是回文或 b[从索引 i 到 n-i-1] 是回文时返回 true
让我们看看下面的实现以便更好地理解 −
示例
class Solution: def solve(self, a, b): n = len(a) i = 0 while i < n and a[i] == b[-i-1]: i += 1 palindrome = lambda s: s == s[::-1] return palindrome(a[i:n-i]) or palindrome(b[i:n-i]) ob = Solution() S = "cat" T = "dac" print(ob.solve(S, T))
输入
"cat","dac"
输出
True
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

