LeetCode 7整數反轉

2021-09-12 08:44:28 字數 1609 閱讀 8088

這道題真的是折射出我的python基礎不太紮實

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

示例 1

:輸入:

123輸出:

321 示例 2

:輸入:

-123

輸出:-

321示例 3

:輸入:

120輸出:

21注意:

假設我們的環境只能儲存得下 32 位的有符號整數,

則其數值範圍為 [−231

,231 − 1

]。請根據這個假設,如果反轉後整數溢位那麼就返回 0。

一開始看到這道題,我第乙個想法就是把整數變成字串型別,然後列表逆序,然後找個辦法計算出結尾0的個數,這不是很簡單嘛。然後我花了十分鐘寫了下面**(列表切片有一點忘了)

class

solution

(object):

defreverse

(self, x)

:"""

:type x: int

:rtype: int

"""y =

10while

(x//y == x/y)

: y *=

10 y =

int(y/10)

y =len(

list

(str

(y)))-

1if x >=0:

x =list

(str

(x))

x = x[::

-1] x = x[y:

]return

int(

"".join(x)

)else

: x =

list

(str

(x))

x.pop(0)

x = x[::

-1] x = x[y:

]return

-int(""

.join(x)

)

#戰勝 93.45 % 的 python 提交記錄

#執行時間36 ms

class

solution

(object):

defreverse

(self, x)

:"""

:type x: int

:rtype: int

"""b =

0if x <0:

b, x =1,

abs(x)

mod, res =0,

0while x:

x, mod = x //

10, x %

10 res = res *

10+ mod

if res >

2147483648

:return

0if b ==1:

res =

-res

return res

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 根據這個假設,如果反轉後的整數溢位,則返...