1.字符串法,直接把x转换成字符串,然后倒序,比较是否相等。
这里可以用(.rbegin(),rend())来表示倒序,也可以reverse反转字符串。
class Solution {
public:
bool isPalindrome(int x) {
string res=to_string(x);
return res==string(res.rbegin(),res.rend());
}
};
2.数字法
这里有个注意的点,因为x一直在变化,所以要用一个变量存一下x的初始值。
class Solution {
public:
bool isPalindrome(int x) {
if(x<0)return 0;
int y=x;
long long res=0;
while(x){
res=res*10+x%10;
x/=10;
}
return res==y;
}
};