一、题目原型:
给定一个 32 位有符号整数,将整数中的数字进行反转。
输入: 123
输出: 321
输入: -123
输出: -321
输入: 120
输出: 21
二、题目意思剖析:
用原整数一直余10,保存起来和sum*10相加再赋值给sum
sum = sum * 10 + tempX % 10
tempX = tempX / 10
三、解题思路:
func reverse(_ x: Int) -> Int {
var tempX:Int = x
var sum: Int = 0
while tempX != 0 {
sum = sum * 10 + tempX % 10
tempX = tempX / 10
}
if sum > Int32.max || sum < Int32.min {
return 0
}
return sum
}
四、小结
就比较简单,普通的算法。


有其他好的方法请极速留言,非常乐意一起探讨。😄
网友评论