zoukankan      html  css  js  c++  java
  • 判断一个数是否是回文数

          若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数。

    但是要注意,回文数不是只有奇数位,偶数位也可以是回文数,例如 123321;小数没有回文数。  回文数通俗的看就是,顺着看和反着看数字是同样大小的。

    代码如下:

    import java.util.Scanner;
    /**
     * 判断一个数是否是回文数
     */
    public class palindromeNum {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入一个数:");
            int num = scanner.nextInt();
            System.out.println("是否回文:"+decide(num));
        }
    
        private static boolean decide(int num) {
            //将数字转换成char 数组
            char[] c = String.valueOf(num).toCharArray();
                //判断
                for (int i = 0, j = c.length - 1; i <= (c.length - 1) / 2; i++, j--) {
                    if (c[i] == c[j]) {
                        return true;
                    }else {   //其中一个不满足就不是回文数
                        return false;
                    }
                }
                return false;
        }
    }

           其中for中的条件   i <= (c.length - 1) / 2,而不应该为 i <= c.leng / 2;虽然这两种写法的结果相同,并且当输入的数的位数是奇数时二者效果相同,但是当输入的数的位数是偶数时,第二种写法会多于一次中间两数的判断。

  • 相关阅读:
    滑动窗口法学习
    209. Minimum Size Subarray Sum
    485. Max Consecutive Ones
    27. Remove Element
    167. Two Sum II
    561. Array Partition I
    344. Reverse String
    14. 最长公共前缀
    layui上传文件时出现 请求上传接口出错
    Linux-5.13将初步支持苹果M1 Soc
  • 原文地址:https://www.cnblogs.com/128-cdy/p/12288744.html
Copyright © 2011-2022 走看看