查看原文
其他

【打卡贴】(No.009) 回文数

Ahab Ahab杂货铺 2019-02-15

击上方“Ahab杂货铺”,选择“置顶公众号”

技术分享第一时间送达!


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



欢迎您的点赞和分享

▲长按关注此公众号



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存