給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。
示例 1:
輸入: 123
輸出: 321
示例 2:
輸入: -123
輸出: -321
示例 3:
輸入: 120
輸出: 21
注意:假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 [−231, 231 − 1]。請根據這個假設,如果反轉後整數溢位那麼就返回 0。
123--->321
右邊依次取出每一位,做如下運算
0*10+3 = 3
3*10+2=32
32*10+1=321
-123--->321
先轉換成正數處理
0*10+3=3
3*10+2=32
32*10+1=321
--->-321
120--->21
0*10+0=0
0+10+2=2
2+10+1=21
根據上面的規律:
從0開始 0*10+從右往左取出每一位,直到給的這個數等於0了,說明這個數已經沒有可以取處的值的。
還有一點需要注意的是:[−231, 231 − 1]使用int是存不下的,需要轉成long型別
class
solution
//正數直接使用
temp = x;
//還有值可取
while
(temp!=0)
//在範圍內
if(sum >
0&& sum<
2147483647
)//在範圍內
if( sum <
0&& sum >
-2147483648
)//不在範圍內
LeetCode7反轉整數
給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123輸出 321示例 2 輸入 123輸出 321示例 3 輸入 120輸出 21注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返回 0。以字串方式思考...
LeetCode 7 反轉整數
給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123輸出 321示例 2 輸入 123輸出 321示例 3 輸入 120輸出 21注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返回 0。很簡單,就是不...
leetcode 7反轉整數
隨機一題 給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返...