Leetcode刷題篇 (五)整數反轉

2021-09-12 17:26:11 字數 1078 閱讀 3241

給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。

示例 1:

輸入:123輸出:321
示例 2:

輸入:-123輸出:-321
示例 3:

輸入:120輸出:21
注意:

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

看清楚題目再下手,反轉後整數溢位那麼就返回 0。而不是說原資料溢位

關鍵點:

1 取餘取整操作:   

a=x%10

x=x/10

2 反轉操作:

a = 0

while(x!=0)

a=10*a+x%10

x=x/10

class solution:

def reverse(self, x: int) -> int:

a=0if x>0:

while x>0 :

a=10*a+x%10

x=int(x/10)

if a>(2**31)-1 or a<-(2**31):

return 0

else:

return a

elif x<0:

x=-x

while x>0 :

a=10*a+x%10

x=int(x/10)

if a>(2**31)-1 or a<-(2**31):

return 0

else:

return -a

else:

return 0

Leetcode刷題 整數反轉

解法一 思路 先將x轉化為字串形式str x 然後判斷x是否負數,是則輸出除負號外的倒序字串,然後取負,否則直接輸出倒序字串。def reverse force x int int str x str x if str x 0 str x str x 1 從後往前數,步進為1 321 x int s...

LeetCode 刷題 整數反轉

示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後整數溢位那麼就返回 0。雖然是個easy難度的,但是想一次通過並不簡單...

LeetCode刷題 整數反轉

給你乙個 32 位的有符號整數 x 返回 x 中每位上的數字反轉後的結果。如果反轉後整數超過 32 位的有符號整數的範圍 231,231 1 就返回 0。假設環境不允許儲存 64 位整數 有符號或無符號 示例 1 輸入 x 123 輸出 321 示例 2 輸入 x 123 輸出 321 示例 3 輸...