文章所有代码会在github同步更新,链接奉上:Leetcode代码链接
题目来源于LeetCode
题目如下:
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
实例如下:
分析如下:
回文数可以简单理解成对称,首先可以将待判断的数字转换为字符串形式,并且设置一个flag=0;接下来比较对称位置上的字符是否相等,如果字符是偶数个那么只需要循环一半即可,如果字符是奇数个,只需要循环小于一半的最大整数个就行;若对称相等,则不进行任何操作,flag依旧等于0,返回true,若对称不相等,则置flag等于1,返回false。
python参考代码如下:
class Solution:
def isPalindrome(self, x: int) -> bool:
x_str = str(x)
flag = 0
for i in range(len(x_str)//2):
if x_str[i] == x_str[len(x_str)-1-i]:
continue
else:
flag = 1
break
if flag == 0:
return bool(1)
else:
return bool(0)
代码运行通过,执行用时:56 ms,在所有 python3 提交中击败了97.70%的用户;内存消耗:12.7 MB,在所有 python3 提交中击败了99.64%的用户。