双指针
public boolean isPalindrome(int x) {
//从示例2看出,负数一定不是回文数
if(x < 0){
return false;
}
if(x>=0 && x<=9){
return true;
}
List list = new ArrayList<Integer>();
while(x>0){
list.add(x%10);
x/=10;
}
int i=0,j=list.size()-1;
while(i<=j){
if(list.get(i) == list.get(j)){
i++;
j--;
}else{
return false;
}
}
return true;
}
你能不将整数转为字符串来解决这个问题吗?
借鉴下这篇文章
你能不将整数转为字符串来解决这个问题吗