回文數判斷 演算法

2021-10-02 09:04:28 字數 1520 閱讀 3357

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

示例 1:

輸入: 121

輸出: true

示例 2:

輸入: -121

輸出: false

解釋: 從左向右讀, 為 -121 。 從右向左讀, 為 121- 。因此它不是乙個回文數。

示例 3:

輸入: 10

輸出: false

解釋: 從右向左讀, 為 01 。因此它不是乙個回文數。

高階:你能不將整數轉為字串來解決這個問題嗎?

這道題和之前的特殊回文數有很相同的類似,不過這個不是輸出,而是判斷,同樣是將數字進行拆分,只不過不清楚數字的準確大小長度,因此需要考慮到關於長度未知的問題,可以考慮對數的進行拆分重組新數,將新數與原數進行比較。

class solution 

if(y==xx)

return true;

else

return false;}};

輸入輸出true

將數從兩端向中間分別取出,做比較,若存在一組不相等,則返回false,對於奇數字的數字同樣受用

示例1:

最後可以將4同時作為兩邊數,因此該數是乙個回文數

示例2:

此處出現拆分出來的左右數兩端不相等,因此可以直接返回false

class

solution

return

true;}

};

輸入輸出true

這種數學方式,採用對數兩端同時拆分的方法,也避免了將數字轉換為字串

演算法 判斷回文數

回文數是指正序 從左向右 和倒序 從右向左 讀都是一樣的整數。輸入 121 輸出 true 輸入 121 輸出 false 解釋 從左向右讀,為 121 從右向左讀,為 121 因此它不是乙個回文數。輸入 10 輸出 false 解釋 從右向左讀,為 01 因此它不是乙個回文數。public cla...

判斷回文數演算法

回文數是指正序 從左到右 讀和倒序 從右到左 讀都是一樣的整數。比如形如 121,1221,13531 的數字都是回文數,但 121,10,25 等等都不是回文數。如何判斷乙個數是回文數?這是乙個很簡單的演算法,最常見的實現方式是使用乙個棧或其他方法,把數字序列逆序,然後判斷逆序後的數字是否等於原先...

判斷回文數

如果乙個數的反向倒置數和它的順向數一樣,那麼這個數稱為回文數。編寫乙個測試程式,提示使用者輸入乙個整數值,然後報告這個數是不是回文數。我先後一共寫了三個函式。方法一 由於題目要求輸入的是整數值,所以按照整數的方法倒置數字,與原數比較即可。public class palindrom public s...