题目描述:
个人题解:
先将整数转换成字符串,再利用双指针逐一比较数字。
代码实现:
class Solution {
public:
bool isPalindrome(int x) {
if(x<0||(x%10==0&&x!=0)){
return false;
}
//c++标准库调用,将整数下转化成字符串
string str = to_string(x);
int right=0,left=str.length()-1;
while(right<left){
if(str[right]!=str[left]){
return false;
}
left--;
right++;
}
return true;
}
};
复杂度分析:
时间复杂度:O(n)。
空间复杂度:O(n)。