题目描述
在不使用额外的内存空间的条件下判断一个整数是否是回文数字
提示:
负整数可以是回文吗?(比如-1)
如果你在考虑将数字转化为字符串的话,请注意一下不能使用额外空间的限制
你可以将整数翻转。但是,如果你做过题目“反转数字”,你会知道将整数翻转可能会出现溢出的情况,你怎么处理这个问题?
示例1
输入:121
输出:true
代码实现:
import java.util.*;
public class Solution {
/**
*
* @param x int整型
* @return bool布尔型
*/
public boolean isPalindrome (int x) {
// write code here
if(x<0) return false;
//找到最高位
int div = 1;
int loopTime = 0;
while(x/div >=10){
div = div*10;
loopTime ++;
}
for(int i = 0; i< loopTime/2 +1; i++){
int left = x/div;
int right = x%10;
if(left != right) return false;
x = x % div / 10;
div /= 100;