[LeetCode] 7. Reverse Integer [Easy] [LeetCode]
Given a 32-bit signed integer, reverse digits of an integer.
Example 1:
Input: 123
Output: 321
Example 2:
Input: -123
Output: -321
Example 3:
Input: 120
Output: 21
Note: Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231, 231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.
Analyse:
利用數學方法反轉.
Solution:
class Solution {
func reverse(_ x: Int) -> Int {
var input = x;
var negative = 1;
var output = 0;
if(input < 0) {
input = input * -1;
negative = -1;
}
while(input > 0) {
var value = input % 10;
input = input / 10;
output = output * 10 + value;
}
output = output * negative;
if(output > Int32.max || output < Int32.min) {
output = 0;
}
return output;
}
}
Previous[LeetCode] 5. Longest Palindromic Substring [Medium]Next[LeetCode] 8. String to Integer (atoi)
Last updated