力扣09 判断一个数是否是回文数
  ts5SxE9jKU6l 2023年11月01日 35 0

力扣09 判断一个数是否是回文数

题目:

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

  • 例如,121 是回文,而 123 不是。

示例 1:

输入:x = 121
输出:true

示例 2:

输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。

解法一:

解题思路:

可以先将数字转化为字符串类型然后借鉴双指针的思想(左右指针),一个左指针一个右指针分别从两头往中间走并判断两个指针所指的值是否相等如果相等就是回文数反之则不是。

代码:

/**
 * 给定一个数字判定它是否是回文数,所谓回文数就是从左往右读与从右往左读都是一样
 * 例如:121
 */
public class IsHuiWenNum01 {
    //1.定义一个方法判定这个数字是否是回文数,返回值为boolean类型,参数为int
    public static Boolean isHuiWenNum(int number){
        //2.如果它是负数肯定就不是回文数
        if(number < 0){
            return false;
        }
        //2.1将这个数字转化为字符串
        String s = Integer.toString(number);
        //2.2我们可以使用双指针(左右指针)一个左指针一个右指针分别往中间走并判定这两个双指针是否相等
        int left = 0;
        int right = s.length()-1;
        //3.进行循环左右指针往中间走
        while (left <= right){
            //3.1判断左右指针是否相等
            if(s.charAt(left) != s.charAt(right)){
                return false;
            }
            left ++;
            right --;
        }
        return true;
    }
}

解法二:

解题思路:

我们可以将给定的数字变换成它完全翻到过来的数字再判断与原来的数字是否相等如果相等就是回文数反之不是。

代码:

/**
 * 不转换为字符串我们将这个数字想办法变成它从右往左读的数再与原来的数进行比较如果相等那么原来的这个数就是回文数
 * 例如:123 要先右一个中间量来作为过度假如为 x = 0
 * 第一步我们先取出各位上的数字:123 % 10 =3        2       1
 * 第二步更新x的值为: x = x * 10 + 3 = 3        32      321
 * 第三步取出除各位上的以外的数: 123 / 10 = 12     1       0
 * 重复这三步骤直到第三步为0最后x的值就是原来数倒过来的数
 */
public class IsHuiWenNum02 {
    //1.定义一个方法返回值为boolean类型参数为int类型
    public static Boolean isHuiWenNum(int num){
        //2.定义一个中间变量作为过度,定义一个变量作为num的中间量
        int a = num;
        int betweenNum = 0;
        while (a != 0){
            int lastNum = a % 10;
            betweenNum = betweenNum * 10 + lastNum;
            a = a / 10;
        }
        return betweenNum == num;
    }
}
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  jTMfQq5cr55P   2024年05月17日   42   0   0 算法与数据结构
  jTMfQq5cr55P   2024年05月17日   39   0   0 算法与数据结构
ts5SxE9jKU6l
作者其他文章 更多

2023-11-01

2023-11-01

2023-11-01

2023-11-01

2023-11-01

2023-11-01