[回文] LeetCode9. Palindrome Number

除以10以后,再构造一个newx,相等则是回文数

class Solution {
public:
    bool isPalindrome(int x) {

        if(x < 0 || (x != 0 && x % 10 == 0)) //负数&结尾是0的数(不包括0),不是回文数
            return false;
        
        int newx = 0;
        while(newx < x) { //少掉一半的循环
            int re = x % 10;
            x = x / 10;
            newx = newx * 10 + re;
        }
        
        return ((x == newx) || (x == newx / 10)); //回文数有奇数长度和偶数长度两种情况
    }
};
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容