java回文數(shù)算法怎么使用

小億
74
2023-10-22 10:59:07

要判斷一個(gè)數(shù)字是否為回文數(shù),可以使用以下算法:

  1. 將數(shù)字轉(zhuǎn)換為字符串。
  2. 使用兩個(gè)指針,一個(gè)指向字符串的開(kāi)頭,一個(gè)指向字符串的末尾。
  3. 比較兩個(gè)指針指向的字符是否相等,如果不相等,則該數(shù)字不是回文數(shù)。
  4. 如果相等,將兩個(gè)指針向中間移動(dòng),繼續(xù)比較。
  5. 當(dāng)兩個(gè)指針相遇或者交叉時(shí),說(shuō)明該數(shù)字是回文數(shù)。

以下是一個(gè)使用Java實(shí)現(xiàn)的示例代碼:

public class PalindromeNumber {
    public static boolean isPalindrome(int number) {
        String str = Integer.toString(number);
        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 number = 12321;
        boolean isPalindrome = isPalindrome(number);
        System.out.println("Is " + number + " a palindrome number? " + isPalindrome);
    }
}

在上述示例代碼中,我們將數(shù)字12321傳入isPalindrome()方法,并打印結(jié)果。輸出結(jié)果為"Is 12321 a palindrome number? true",說(shuō)明12321是一個(gè)回文數(shù)。

0