7 整數反轉

2021-10-03 14:40:35 字數 355 閱讀 8819

給出一位32位的有符號整數,將這個整數中每位上的數字進行反轉。例如:輸入 123 輸出321 輸入-123 輸出-321 輸入 120 輸出 21

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

當不考慮溢位的時候,pop取每次x更新的值的最後一位,x不斷整除10,ans用來更新每次倒轉的數字。——取尾數,減位數。

但是這道題需要考慮int溢位的問題,因此需要進行判斷。因為ans的更新是在判斷之前數字是否溢位之後,所以ans的比較是integer.max_value/10 。其中最大值的尾數為7,最小值的尾數為-8,尾數大於或者小於這兩個都不行。

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 ...