Discuss / Python / 递归与非递归实现回文问题

递归与非递归实现回文问题

Topic source

钱老板boss

#1 Created at ... [Delete] [Delete and Lock User]

#递归实现数字回文判断问题

def is_palindrome(n): temp_str = str(n) length = len(temp_str)

if 0<= length <= 1:
    return True

if temp_str[0] != temp_str[-1]:
    return False
else:
    return is_palindrome(temp_str[1:-1])

#非递归实现数字回文判断问题

def is_palindrome_2(n): temp_str = str(n) length = len(temp_str) start = 0 end = length -1 #字符串str[length]会发生越界 if length <= 1: return True

while start <= end :
    if temp_str[start] == temp_str[end]:   #继续比较
        start += 1
        end -= 1
    else:
        return False
return True #函数返回True

  • 1

Reply