7 整數反轉

2021-09-11 15:23:25 字數 752 閱讀 7136

解法一:對輸入數字進行整除和取餘運算,並把輸出值乘以10後與每次取餘的結果相加,直到原資料變為0

每次迴圈,原數對10取餘+結果乘以10,同時原數對10整除。

c++:

int reverse(int x)

return rev;

}python:

def reverse(self, x):

r = 0   #返回值

flag = 1 #標記輸入值的正負

if x<0:

x = abs(x)

flag = -1 #輸入是負數

while x != 0:

r = r*10+x%10

x = x//10

if -2147483647解法二:反向複製。a[::-1]相當於 a[-1:-len(a)-1:-1],也就是從最後乙個元素到第乙個元素複製一遍

python:

def reverse(self, x):

flag = 1

if x < 0:

flag = -1

x = -x

r = str(x)[::-1]

r = int(r)

if r> 2147483647 or r < -2147483648:

r = 0

return r*flag

7 整數反轉

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

7 整數反轉

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