资源干货第一时间送达!
写在前边:
小詹此记录贴的读者越来越少了,也许是小詹总结的不够好欢迎留言区提出宝贵的意见!也欢迎和小詹一起定期刷leetcode,每周一和周五更新一题,每一题都吃透,欢迎一题多解,寻找最优解!这个记录帖哪怕只有一个读者,小詹也会坚持刷下去的!
No.7 反转整数
原题:(有中文网站,就不去读英语啦哈哈)
给定一个32 位有符号整数,将整数中的数字进行反转。
例如:
题目大意:注意题目中小詹标蓝的部分:32位有符号整数!说明有正负!如果超过32位范围就输出0。这一题比较简单,就用较为简单的篇幅进行讲解如下。
开始的开始,我们都是孩子!一开始想到了本科学c的时候遇到过类似的,第一反应是通过除法取商和取模运算进行反转,即依次获取每一个位置的数,然后反转再输出。这里值得一提的是不需要像小詹最初所想的进行列表化再反转处理。按照下列代码逻辑,已经实现了反转。
然而,执行只能通过部分样例,检查发现有这样几种错误:
未考虑到正负符号
为考虑超出32位
未考虑时间限制
这题很简单,完善下逻辑肯定没问题,但是时间很容易超出限制。但是!我们是用啥?用的是python啊,就像之前打卡群里小伙伴说的python内置函数都很牛逼。这题就可以有python的独特方法实现噢,比如列表的反转方法有哪些?自行温习,这里小詹跟大家说两种常用的:
list.reverse()方法
字符串切片方法:res = s[::-1]
于是完善上边的逻辑漏洞,考虑到32位限制和正负符号。得到炒鸡简单的代码如下:
这题思路简单,粗暴有力,尤其是利用python来实现简直就像是在作弊~~~~
领取专属 10元无门槛券
私享最新 技术干货