DataWhale学习小组~
Leetcode腾讯精选练习50题
第二天,有一丝丝老司机上路的意味,尽管仍然是在DDL的边缘疯狂试探。
等忙过这周,一定重新梳理一下笔记,等着!
7-整数反转
我的思路:
- 把输入的x变成列表
- 把列表反过来
- 把列表合成数字
- 判断是否溢出并输出结果
class Solution(object):
def reverse(self, x):
"""
:type x: int
:rtype: int
"""
if x>=0:
y=int(''.join(list(str(x))[::-1]))
else:
y=(-1)*int(''.join(list(str(x))[1:][::-1]))
if (-1)*pow(2,31)<=y<=pow(2,31)-1:
return y
else:
return 0
做得比较暴力,结果也一般。
但是看了官方解法也并不觉得有多高明😂。不愧是简单题…
8-字符串转换整数
一开始没觉得有什么问题,直到我开始提交答案。
真没想过系统准备了这么多出其不意的算例23333
于是逛了一下评论区,不愧是热评!
大佬一行python解决一切
https://leetcode-cn.com/problems/string-to-integer-atoi/solution/python-1xing-zheng-ze-biao-da-shi-by-knifezhu/
max(min(int(*re.findall('^[\+\-]?\d+', s.lstrip())), 2**31 - 1), -2**31)
9-回文数
不愧是简单题
class Solution(object):
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
x=str(x).strip()
if len(x)==0:
return True
for i in range(int(len(x)/2)):
if x[i]!=x[(-1)*i-1]:
return False
return True
结果依旧有提升空间
看了官方题解发现,自己少考虑了一些特殊情况↓
- 当 x < 0 时,x 不是回文数。
- 如果数字的最后一位是 0,为了使该数字为回文,则其第一位数字也应该是 0,只有 0 满足这一属性
解法实在是太神奇了!脑子是个好东西555