题目:将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数)。
样例
给定 x = 123,返回 321
给定 x = -123,返回 -321
思路:
新建一个空字符串,获取数字从尾到头的数据:这个过程需要将数字->字符串,然后将字符串的元素按尾到头顺序给空字符串,以连接的方式+。
一开始数据可能要有分正负,解决方案是直接将全部数据绝对值化,最后得到一个反转的数字之后,再去判断原始数据是否负,是给反转的数据添符号。
class Solution:
# @param {int} n the integer to be reversed
# @return {int} the reversed integer
def reverseInteger(self, n):
# Write your code here
if -1010 :
return n
n1=abs(n) #都按正数进行操作
b=str(n1)
if len(b)>10:
return 0
v=''
for i in range(len(b)): #反转
v=v+b[-(i+1)]
result=int(v)
if n<0: #判断是否要添加符号符号
result=-result
if -2147483648 < result < 2147483647: #整数不溢出的条件
return result
else:
return 0