您的位置:首页 > 编程语言 > Python开发

leetcode Reverse Integer(python)

2014-10-18 14:03 363 查看
哎,刚做完这么一道水题,自己就迫不及待的刷空间去了。还是耐不住性子啊。那不如就写一篇blog吧。当放松了。好啦,进入正题吧。题目相当简单,就是把给的整数翻转就行了。例如 123, 返回321; -789,返回-987。

好,直接上python。
class Solution:
#@return an integer
def reverse(self, x):
positive_x = abs(x)
multi = x / positive_x
str_x = str(positive_x)
rever_str_x = str_x[::-1]
return int(rever_str_x) * multi
心里想着,这题是真的简单啊。直接搞定了。不到1分钟啊。

commit上去,哇噢噢噢噢噢!!!!错了, 原来,不小心忘了x为0时的情况,这时候x是不能作为被除数的。呀,添加一个条件呗。

class Solution:
#@return an integer
def reverse(self, x):
if 0 == x:
return x
positive_x = abs(x)
multi = x / positive_x
str_x = str(positive_x)
rever_str_x = str_x[::-1]
return int(rever_str_x) * multi


哈哈,搞定了。

然后自己又再次优化了一下代码。太多中间变量。来个代码超短的。

class Solution:
# @return an integer
def reverse(self, x):
if 0 == x:
return 0
return int(str(abs(x))[::-1]) * (x / abs(x))
哈哈,这就是我喜欢python的原因。

水题一道,不值得炫耀,只是克制一下贪玩的自己。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: