LeetCode题解——Palindrome Number

时间:2023-03-08 19:34:33

题目

判断一个数字是不是回文数字,即最高位与最低位相同,次高位与次低位相同,...

解法

求出数字的位数,然后依次求商和求余判断是否相等。

代码

 class Solution {
public:
bool isPalindrome(int x) {
if(x < )  //负数有符号,肯定不是回文数
return false; int d = ;
while(x / d >= )  //d与x位数相同
d *= ; while(x)
{
if(x/d != x%)  //比较最高位和最低位是否相等
return false;
x = x % d / ;  //去掉最高位和最低位
d /= ; //d相应转换
} return true;
}
};