给定一个 32 位有符号整数,将整数中的数字进行反转。
注意:
假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。
示例:
输入: -123 输出: -321
解决方法:
class Solution{
func reverse ( _x:Int )->Int{
var mx:Int = x
var rev:Int = 0
while (mx !=0){
let pop:Int = mx % 10
mx /= 10
//边界处理,Int32.max值为214748367,Int32.min值为-2147483648
if (rev > Int32.max || ( rev == Int32.max && pop > 7)){
return 0
}
if (rev < Int32.min || ( rev == Int32.min && pop < - 8 )) {
return 0
}
rev = rev *10 + pop
}
return rev
}
}