Since I don't want to use any additional space, I did not convert it to a string.

First compute how many digits are there using log10(x);

then compare the most significant digit and the least significant digit, move one digit inside, and repeat.

time complex should be O(n), but actual program performs cost 1606ms..

```
public boolean isPalindrome(int x) {
double num = Math.abs((double) x);
System.out.println(num);
int length = (int) Math.log10(num) + 1;
System.out.println(length);
for (int i = 1; i < length / 2 + 1; i++){
double m = Math.floor((num%(Math.pow(10, i)))/Math.pow(10, i-1));
double n = Math.floor((num%(Math.pow(10, length - i + 1)))/Math.pow(10, length - i));
if (m != n){
return false;
}
}
return true;
}
```