7 Reverse Integer
算法愣是没想出来,昨天看了一年前的代码才写的,只有很简单的两行。
class Solution {
public int reverse(int x) {
int reverse=0;
while(x!=0)
{
reverse=x%10+reverse*10;
x=x/10;
}
return reverse;
}
}
负数取模,结果也是负数。所以不需要单独处理负数的情况。
范例是可以通过的,但是提交的时候WA,原因是没有处理溢出。
所以leetcode给的答案里,处理溢出的方法就是return 0
?
class Solution {
public int reverse(int x) {
int reverse=0;
while(x!=0)
{
if(Math.abs(reverse)>Integer.MAX_VALUE/10)
return 0;
reverse=x%10+reverse*10;
x=x/10;
}
return reverse;
}
}
碎碎念:写这种简单的循环总是需要草稿纸才行……不然想不出来啊……好弱……
网友评论