在Python中检查字符串的任何字谜是否回文
假设我们有一个字符串s。我们必须检查该字符串的字谜是否正在形成回文。
因此,如果输入像s=“aarcrec”,则输出将为True。此字符串的一个字谜是“racecar”,即回文。
为了解决这个问题,我们将遵循以下步骤-
freq:=一个存储所有字符及其频率的映射
奇数:=0
对于频率所有值的列表中的每个f,执行
奇数:=奇数+1
如果f是奇数,则
如果奇数>1,则
返回False
返回True
让我们看下面的实现以更好地理解-
示例
from collections import defaultdict
def solve(s):
freq = defaultdict(int) for char in s:
freq[char] += 1
odd_count = 0
for f in freq.values():
if f % 2 == 1:
odd_count += 1
if odd_count > 1:
return False
return True
s = "aarcrec"
print(solve(s))输入值
"aarcrec"输出结果
True