題目:
給定乙個 32 位有符號整數,將整數中的數字進行反轉。
示例 1:
輸入:123輸出:321示例 2:
輸入:-123輸出:-321示例 3:
輸入:120輸出:21注意:假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 [−231, 231 − 1]。根據這個假設,如果反轉後的整數溢位,則返回 0。
思路:這個**其實我提交一次錯一次才知道思路。。剛開始用餘數和整除把百十位分開然後再合起來,很麻煩,條件很多。
直接轉成字串,再通過[::-1]的寫法把字串反轉,很方便而且**也很少。
轉成字串
判斷第乙個字元是否為『-』 ,即是是否為負號
如果是負號就從下標為1的字元切片(主要為了去掉負號),並且用[::-1]反轉字串,這裡[::-1]的意思就是從開始到結束,每次以-1的step取值。
如果正好從下標為0開始切片。反轉完成後轉換成整型,因為題目要求有取值範圍,所以要判斷是否》2147483647或
完成**:
python
deffunc1(x):
s =str(x)
if s[0] == '-'
: s = s[1:][::-1]
x = -int(s)
if x >= (-2 ** 31):
return
x
else
: s = s[::-1]
x =int(s)
if x <= 2 ** 31 - 1:
return
x
return 0
leetcode反轉整數
題目 反轉整數 給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 2 31,231 1 根據這個假設,如果反轉後的整數溢...
leetcode 整數反轉
給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321示例 2 輸入 123 輸出 321示例 3 輸入 120 輸出 21注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後整數...
LeetCode 整數反轉
給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後整數溢位那麼就返回 0。題目並不難,重點在於處理溢位問題。int max 2147483647 int min...