給你乙個 32 位的有符號整數 x ,返回 x 中每位上的數字反轉後的結果。如果反轉後整數超過 32 位的有符號整數的範圍 [−231, 231 − 1] ,就返回 0。假設環境不允許儲存 64 位整數(有符號或無符號)。
示例 1:
輸入:x = 123
輸出:321
首先,我們先檢測向原整數附加另一位數字是否會導致溢位。當不會溢位時我們再對這個數字進行處理,令該數%10,取出最後乙個數字加到result中,每加一次需要result*10,x/10.最後輸出即可.
**如下(示例):
public class zhengshufanzhuan
public int
reversal
(int x)
//取這個數字的最後一位 到第一位
result = result *
10+ x %10;
x = x/10;
}return result;
}}
注意對是否溢位進行判斷.if ((ans * 10) / 10 != ans) {} 判斷 ans10 是否溢位,若 ans10未溢位,但 (ans10 + x%10) 溢位了,不會有這種情況,因為ans10未溢位時, ans10個位為0, x%10的取值範圍是0~9, 故ans10 + x%10一定沒有進製, 故不會溢位。 演算法題 整數反轉
給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 class solution def reverse self,x int int if x 0 new str s...
演算法題2 整數反轉
1 字串法 將數字轉化為字串,然後利用stringbuffer類的reverse 方法反轉字串,最後通過integer.parseint 將字串轉化為整數進行輸出 private int reverse1 int input return input 0 integer.parseint res i...
每日演算法題 整數反轉 簡單
題目描述 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321示例 2 輸入 123 輸出 321示例 3 輸入 120 輸出 21注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 2的31次方,2的31次方 1 請根據這...