回文数

Intro

第九题,判断回文数

题目

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。

来源:力扣(LeetCode)

题解

暴力法(Python3)

1
2
3
4
5
6
7
8
9
10
11
def isPalindrome_direct(self, x: int) -> bool:
tmp = list(str(x))
index = 0
for i in str(x):
tmp[len(str(x))-index-1] = i
index = index + 1
pa = ''.join(tmp)
if pa == str(x):
return True
else:
return False

分析:比较蠢的办法,第一次写的,int转成str又转成list又转回str再比较,繁琐,耗时长,不愧是我写出来的

切片法(Python3)

1
2
def isPalindrome(self, x: int) -> bool:
return x>=0 and int(str(x)[::-1]) == x

分析:使用str的切片方法,较比暴力法效率提高了几倍

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2019-2021 星界棱镜子
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信