LeetCode(7)整數反轉

題目: 給出一個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。

示例 1:

輸入: 123
輸出: 321

示例 2:

輸入: -123
輸出: -321

示例 3:

輸入: 120
輸出: 21

注意:
假設我們的環境只能存儲得下 32 位的有符號整數,則其數值範圍爲 [−231, 231 − 1]。請根據這個假設,如果反轉後整數溢出那麼就返回 0。



class Solution {
    public int reverse(int x) {
        int temp=0;
        while(x!=0)
        {
            if((temp*10)/10!=temp)
            {
                temp=0;
                break;
            }
            temp=temp*10+x%10;
            x/=10;
        }
        return temp;
    }
}
public class SolutionDemo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Solution s=new Solution();
        int x=123;
        System.out.println(x);
        System.out.println(s.reverse(x));
        System.out.println();
        
        x=-123;
        System.out.println(x);
        System.out.println(s.reverse(x));
        System.out.println();
        
        x=120;
        System.out.println(x);
        System.out.println(s.reverse(x));
        System.out.println();
    }
}

執行結果爲:

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