0007-Reverse Integer(整数反转)
生活随笔
收集整理的這篇文章主要介紹了
0007-Reverse Integer(整数反转)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
這個系列算是出于個人興趣開的一個新坑吧,最近看到同學(xué)刷LeetCode算法題,就想寫寫那些可以一行Python代碼寫出來的題目,因此本專欄的文章的解題方式效率不做保證,只為追求“一行的浪漫”。
題目
題解
簡單解釋一下題目,給定一個32位的數(shù)字x,將其反轉(zhuǎn),如123變?yōu)?21,210變?yōu)?2。如果翻轉(zhuǎn)后的數(shù)字超過符號32位整型的范圍,則輸出0。本題難度為Easy。
代碼
這題為了單行寫成,這里的思路是轉(zhuǎn)為無符號字符串之后逆序然后再轉(zhuǎn)為int型,這里為了節(jié)省計算,采用了海象運算符。實際上這題效率較高的思路應(yīng)該采用棧來實現(xiàn),具體可以參考官網(wǎng)的題解。代碼如下。
class Solution:def reverse(self, x: int) -> int:return rst if (rst := (1 if x > 0 else -1) * int(str(abs(x))[::-1])) >=-2**31 and rst <=2**31-1 else 0提交的反饋如下。
總結(jié)
以上是生活随笔為你收集整理的0007-Reverse Integer(整数反转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TIS教程02-模型
- 下一篇: TIS教程04-客户端