博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
9. Palindrome Number
阅读量:4982 次
发布时间:2019-06-12

本文共 1328 字,大约阅读时间需要 4 分钟。

description:

Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.

Example 1:Input: 121Output: trueExample 2:Input: -121Output: falseExplanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.Example 3:Input: 10Output: falseExplanation: Reads 01 from right to left. Therefore it is not a palindrome.

my answer:

class Solution {public:    bool isPalindrome(int x) {        if(x<0) return false;        string s;        while(x!=0){            int add = x%10;            s+='0'+add;            x = x/10;        }        int n = s.size();        for(int i = 0; i < n/2; i++){            if(s[i]!=s[n-1-i]) return false;        }        return true;    }};

大佬的answer:

class Solution {public:    bool isPalindrome(int x) {        if(x<0||(x%10==0&&x!=0))return false;        return reverse(x)==x;    }    int reverse(int x){        int res = 0;        while(x!=0){            if(res>INT_MAX/10)return -1;//这里很有意思,溢出好像都是判断INT_MAX/10的?            res = res*10 + x%10;            x /= 10;        }        return res;    }};

relative point get√:

emmm, string and integer 交换好像都需要'0' 作为跳板咩...?

hint :

res>INT_MAX/10)return -1

res = res*10 + x%10;
x /= 10;

转载于:https://www.cnblogs.com/forPrometheus-jun/p/10576297.html

你可能感兴趣的文章
DNS用的是TCP协议还是UDP协议
查看>>
JDK8集合类源码解析 - HashSet
查看>>
[面试没有回答上的问题4]常用字符串和数组的操作。
查看>>
WPF知识点全攻略09- 附加属性
查看>>
敏捷开发 流程 - 及产出
查看>>
关于SQL Server 2017中使用json传参时解析遇到的多层解析问题
查看>>
[转]SVN客户端解决authorization failed问题
查看>>
/etc/init.d目录和/etc/rc.local脚本
查看>>
Kubernetes StatefulSets
查看>>
用Python对html进行编码
查看>>
[转载]Java文件路径详解
查看>>
18.3.2从Class上获取信息(构造器)
查看>>
【TortoiseGit】TortoiseGit将本地库push到远端
查看>>
怎么样学习算法导论理论知识-算法何用
查看>>
Jenkins使用手册及总结
查看>>
Latest Common Ancestor
查看>>
getByClass--获取指定标签且class为指定的所有元素
查看>>
三点顺序
查看>>
拟物化设计与扁平化设计
查看>>
PS小实验-去除水印
查看>>