java实现回文数算法

判断一个数是否为回文数可以使用以下算法:

  1. 将数字转化为字符串;
  2. 初始化左右两个指针,分别指向字符串的首尾;
  3. 循环比较左右指针指向的字符,如果相等则继续比较,直到左右指针相遇或者发现不相等的字符为止;
  4. 如果左右指针相遇,则说明数字是回文数,返回true;否则,返回false。

以下是一个使用该算法的回文数判断的Java代码示例:

java 复制代码
public class PalindromeNumber {
    public static boolean isPalindrome(int num) {
        String str = String.valueOf(num);
        int left = 0;
        int right = str.length() - 1;
        while (left < right) {
            if (str.charAt(left) != str.charAt(right)) {
                return false;
            }
            left++;
            right--;
        }
        return true;
    }

    public static void main(String[] args) {
        int num = 12321;
        boolean isPalindrome = isPalindrome(num);
        System.out.println(isPalindrome); // 输出 true
    }
}

注意:上述代码假设输入的num是非负整数。如果输入的num是负数,则需要先将其转化为非负整数再进行比较。也可以将负数直接判断为非回文数。

相关推荐
鱼鳞_1 天前
苍穹外卖-Day10(Spring task)
java·后端·spring
雨落在了我的手上1 天前
初始java(十七):常⽤⼯具类介绍
java·开发语言
凤凰院凶涛QAQ1 天前
《Java版数据结构 & 集合类剖析》集合框架的封装设计与顺序表:“从 Iterable 到 ArrayList:集合框架的‘职业树“
java·开发语言·数据结构
孟华苏1 天前
怎么快速排查内存泄漏问题
java·开发语言·python
noipp1 天前
推荐题目:洛谷 P16510 [GKS 2015 #C] gRanks
java·c语言·开发语言·c++·python·算法
flyinmind1 天前
Java环境与Android环境中使用QuickJS
java·开发语言·javascript·quickjs
不吃鱼的羊1 天前
DaVinci Developer自动连接
java·开发语言
farerboy1 天前
15-Java while 和 do...while循环
java·后端
在繁华处1 天前
Java从零到熟练(十二):Java与AI工具整合
java·人工智能·python
凯瑟琳.奥古斯特1 天前
力扣1235完整解法详解
java·开发语言·leetcode