力扣9(java)-回文数(简单)
题目:给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如,121 是回文,而 123 不是。
示例 1:
输入:x = 121
输出:true
示例 2:
输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例 3:
输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。
提示:
-231 121)返回true,不等则返回false;
代码:
https://img2022.cnblogs.com/blog/2546223/202206/2546223-20220624221603741-1745328359.png
https://img2022.cnblogs.com/blog/2546223/202206/2546223-20220624221635737-20420628.png
二、数学方法进阶
1.首先如果为负数,肯定不是回文数,直接返回false;
2.0本身就是回文数,如果末尾数字为0(10的倍数,10,20,30....),则首个数字一定要为0(即为0本身)才会为回文,所以写成:x != 0 && x /10 ==0 这样直接返回false;
3.将整数进行反转,反转后的数字与原数字相同则是回文数,在反转时只用反转一半就可以判断是否为回文了。数字长度为偶数时,最终只需要判断 cur == x,数字长度为奇数时,最终通过 cur / 10去除掉中间的那一位,在与x进行判断是否相等即可。
https://img2022.cnblogs.com/blog/2546223/202206/2546223-20220625101936720-1742763077.jpg
代码:
https://img2022.cnblogs.com/blog/2546223/202206/2546223-20220625102017703-645337176.png
https://img2022.cnblogs.com/blog/2546223/202206/2546223-20220625102044542-2017540637.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]