Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.
Example 1:
Input: 121
Output: true
Example 2:
Input: -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:
Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
Follow up:
Coud you solve it without converting the integer to a string?
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/palindrome-number
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
bool isPalindrome(int x){
int num[16] = {0};
int len = 0;
int i = 0;
if (x < 0)
{
return false;
}
while (x > 0)
{
num[i] = x % 10;
x = x/10;
len++;
i++;
}
i = 0;
len--;
while (i <= len)
{
if (num[i] == num[len])
{
i++;
len--;
}
else
{
return false;
}
}
return true;
}