7 整數反轉

2022-10-10 23:45:16 字數 941 閱讀 3550

7. 整數反轉

難度中等3507收藏分享切換為英文接收動態反饋

給你乙個 32 位的有符號整數x,返回將x中的數字部分反轉後的結果。

如果反轉後整數超過 32 位的有符號整數的範圍[−231, 231 − 1],就返回 0。

假設環境不允許儲存 64 位整數(有符號或無符號)。

示例 1:

輸入:x = 123

輸出:321

示例 2:

輸入:x = -123

輸出:-321

示例 3:

輸入:x = 120

輸出:21

示例 4:

輸入:x = 0

輸出:0

思路:​ 一開始我使用的是把x轉換為字串進行計算,可以,但是過於繁瑣,學習了他人的題解,發現本題並不需要多餘轉換,直接每次取x的最後一位,判斷是否越界時,可以去和int_min(int_min)/10比較

給出別人的**

class solution 

int digit = x % 10;//取出x的最後一位

x /= 10;

rev = rev * 10 + digit;//把最後一位加進來就要整體乘10

}return rev;

}};

關於rev>int_max/10就成立的證明

整數反轉 - 整數反轉 - 力扣(leetcode)

7 整數反轉

鏈結 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321示例2 輸入 123 輸出 321示例 3 輸入 120 輸出 21注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後...

7 整數反轉

解法一 對輸入數字進行整除和取餘運算,並把輸出值乘以10後與每次取餘的結果相加,直到原資料變為0 每次迴圈,原數對10取餘 結果乘以10,同時原數對10整除。c int reverse int x return rev python def reverse self,x r 0 返回值 flag 1...

7 整數反轉

有些讀者反映我寫的內容太簡單,有時候看不懂思路,我以後會記得寫好思路。一 數值法 1.取出符號位 2.10一次取出x的每一位,再 10變為ans 3.判斷是否超出 output 0if x 0 flag 1else flag 1 x abs x while x 0 res x 10 x int x ...