9 迴文數

判斷一個整數是否是迴文數。迴文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。

示例 1:

輸入: 121
輸出: true

示例 2:

輸入: -121
輸出: false
解釋: 從左向右讀, 爲 -121 。 從右向左讀, 爲 121- 。因此它不是一個迴文數。

示例 3:

輸入: 10
輸出: false
解釋: 從右向左讀, 爲 01 。因此它不是一個迴文數。

這個題很簡單,常規思路解題既可。

解題思路:

  1. 如果是負數則一定不是迴文數,直接返回false;
  2. 如果是正數,則將其倒序數值計算出來,然後比較和原數值是否相等;
  3. 最後如果是迴文數則相等返回true,如果不是則不相等false。
class Solution {
    public boolean isPalindrome(int x) {
        // 判斷正負
        if(x < 0) {
            return false;
        } else {
            int num = x;
            int y = 0;
            // 計算反轉之後的值
          while(num != 0) {
             y = y * 10 + num % 10;
             num /= 10;
            }
            // 判斷反轉後和之前的值是否相等
            return y == x;
        }
        
    }
    
}

有問題歡迎留言哦

參考:

https://leetcode-cn.com/problems/palindrome-number/solution/

https://draw.mdnice.com/algorithm/9.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章