长沙微营销/石家庄seo
#数组最长回文数子串
def huiwen(array):n=len(array)left,right=[],[]if n%2==1: #数组长度为奇数mid=n//2 #中间数for i in range(1,(n+1)//2): #从中点开始,分别向左和向右遍历if array[mid+i]==array[mid-i]: #若对称则保留下来right.append(array[mid+i]) left=list(reversed(right))result=left+[array[mid]]+right #列表反转list(reversed())if n%2==0: #数组长度为偶数mid=n//2for i in range(0,mid):if array[mid+i]==array[mid-1-i]:right.append(array[mid+i])left=list(reversed(right))result=left+rightprint(result)
if __name__ == '__main__':array=[0,1,2,3,4,3,2,5,8]huiwen(array) #输出结果为[2, 3, 4, 3, 2]