Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
Note:
The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed integer overflows.
class Solution(object):
def reverse(self, x):
if x == 0:
return 0
flag = 1
if x < 0:
flag = -1
x = abs(x)
temp = x
bit_num = 0
while(temp > 0):
temp = temp / 10
bit_num = bit_num + 1
bit_array = [0] * bit_num
bit_index = 0
while(x > 0):
bit_array[bit_index] = x / (pow(10,bit_num -1))
x = x % pow(10,bit_num-1)
bit_num = bit_num - 1
bit_index = bit_index + 1
result = 0
for i in range(0,bit_index):
result = result + bit_array[i]*pow(10,i)
if isinstance(result,int):
result = result*flag
return result
return 0
"""x
:type x: int
:rtype: int
"""