NO.9 回文数
原题:
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
示例 1:
输入: 121 输出: true
示例 2:
输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。 因此它不是一个回文数。
示例 3:
输入: 10 输出: false 解释: 从右向左读, 为 01 。 因此它不是一个回文数。
字符串切片操作,str[index:index:step]。
return str(x) == str(x)[::-1]
利用Python自带的类型转化,列表的逆序输出功能即可。
old = list(str(num)) new = list(str(num)) new.reverse() if new != old: return False return True
整数转字符串,通过下标对比确定该整数是否为回文数
str_x = str(x) for i in range(0, int(len(str_x) / 2)): if str_x[i] != str_x[-i - 1]: return False return True
整数转字符串,反转字符串,对比反转后字符串与原字符串是否相等
str_x = str(x) str_y = "" for i in str_x: str_y = i + str_y return str_y == str_x
网络方法
数学计算的方法,对比反转整数的值。
if x<0: return False temp_x = x; palindromeNum = 0 while temp_x != 0: palindromeNum = palindromeNum*10 + /temp_x%10 temp_x /= 10 return palindromeNum == x
【推荐阅读】