题目:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
看到这个题我相信大家,第一时间想到的肯定是用字符串,当然这也是最简单的方法
public boolean isPalindrome(int x) {
String str = new String(x + "");
StringBuffer sb = new StringBuffer();
String revStr = sb.append(str).reverse().toString();
if (str.equals(revStr)) {
return true;
} else {
return false;
}
}
但还有一种进阶的算法,就是
先想想
。
。
。
。
。
代码奉上
public boolean isPalindrome(int x) {
if (x < 0) {
return false;
} else {
int temp = 0;
int y = 0;
int quo = x;
while (quo != 0) {
temp = quo % 10;
y = y * 10 + temp;
quo = quo / 10;
}
return y == x;
}
}
这个方法我也想了很久,但是没有想到。最后还是看的别人的,慢慢想想吧。