题目
对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度。
给定字符串A以及它的长度n,请返回最长回文子串的长度。
代码
def getLongestPalindrome(self, A, n):
# write code here
res,tmp,tmp2=0,0,0
for i in range(0,n):
for j in range(i+1,n):
tmp,tmp2=i,j
while tmp<tmp2:
if A[tmp]!=A[tmp2]:
break
tmp=tmp+1
tmp2=tmp2-1
if tmp>=tmp2 and j-i+1>=res:
res=j-i+1
return res
想法
两层循环遍历出所有的子串,并且逐一判断是否是回文