7. Reverse Integer [easy] (Python)

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

题目链接

https://leetcode.com/problems/reverse-integer/

题目原文

Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321

题目翻译

反转整数中的数字。
例子1:给定x=123,返回321;例子2:给定x=-123,返回-321。
本题的几个坑:
1. 原整数是以0结尾的,该如何处理?——比如x=10或x=100,那么都返回1。
2. 原整数反转后溢出怎么办?——比如x=1000000003,反转溢出,那么规定溢出的结果都返回0。

思路方法

这里Python处理整数不会主动溢出实际上会给解题带来麻烦,需要特殊处理。

思路一

循环通过对10取模得到尾部数字,一步步乘10构造新的翻转后的整数即可。然而要注意首先判断原数字的正负,最后还要判断结果是否溢出。

代码

class Solution(object):
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        flag = 1 if x >= 0 else -1
        new_x, x = 0, abs(x)
        while x:
            new_x = 10 * new_x + x % 10
            x /= 10
        new_x = flag * new_x
        return new_x if new_x < 2147483648 and new_x >= -2147483648 else 0

思路二

利用Python的字符串反转操作来实现对整数的反转,反转后的字符串要重新转换为整数。同上面一样,要注意正负和溢出情况。

代码

class Solution(object):
    def reverse(self, x):
        """
        :type x: int
        :rtype: int
        """
        x = int(str(x)[::-1]) if x >= 0 else - int(str(-x)[::-1])
        return x if x < 2147483648 and x >= -2147483648 else 0

PS: 新手刷LeetCode,新手写博客,写错了或者写的不清楚还请帮忙指出,谢谢!
转载请注明:http://blog.csdn.net/coder_orz/article/details/52039990

python刷题笔记2--Reverse Integer 给定一个32位有符号整数,将整数的数字颠倒。反向颠倒溢出时,返回值为0. exmple: input 123 ,-123,120,output 321,-321,21 方法1: 阅读详情

相关推荐

反转整数 python编程

给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: 假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−2**31,  2**31 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。   代码: c...

sxt1001的博客 1154

Python每日一练-----整数反转

☀(day44:P42) 目录 📝题目: 🚩题目分析: 💡解题思路: 🌈代码实现 ✏代码注释 🌈代码实现 🌟 解法一: 🌟解法二 : ✏代码注释 📝题目: 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−2^31, 2^31 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 ⭐示例 1: 输入:x = 123 输出:321 ⭐示例 2: 输入:x =

m0_61791601的博客 2983

剑指 Offer 16. 数值的整数次方

题目: 实现函数double Power(double base, int exponent),求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。 示例 1: 输入: 2.00000, 10 输出: 1024.00000 示例 2: 输入: 2.10000, 3 输出: 9.26100 示例 3: 输入: 2.00000, -2 输出: 0.25000 解释: 2-2 = 1/22 = 1/4 = 0.25 说明: -100.0 < x < 100.0 n 是 3

喜欢藏风里 402

python整数反转(Reverse Integer

题目: """给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围[−2^31,2^31−1],就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 """ 法一:末尾*10 # 弹出 x 的末尾数字 digit digit = x % 10 x /= 10 # 将数字 digit 推入 rev 末尾 rev = rev * 10 + digit class Solution: def rever

weixin_42698464的博客 3033

LeetCode7Reverse Integer (easy)——python

题目来源:                         https://leetcode.com/problems/reverse-integer/description/  题目分析:     本文是给定一个32位的有符号数,让我们将其逆序输出。它给定了这样的几个例子:  由它给的例子,我们可以注意到在实现程序时要注意符号位是正常输出的,此外倒序过来有可能会0来打头,这个也是

revivre的博客 678

LeetCode-easy-7-Reverse Integer】-python

PROBLEMGiven a 32-bit signed integer, reverse digits of an integer.EXAMPLESInput: 123 Output: 321Input: -123 Output: -321Input: 120 Output: 21题目解析题目是将一个32位整数倒转,这在python里实现非常容易实现,使用数组的倒转即可。需要注意的有两点,①倒...

qq_22791547的博客 285

[Leetcode 7, Easy] Reverse integer

Leetcode, easy

算法的实践 629

[LeetCode]easy - Reverse Integer - python

Problem Description: Given a signed 32-bit integerx, returnxwith its digits reversed. If reversingxcauses the value to go outside the signed 32-bit integer, then return0. 题目要求反转整数中的数字。 思路一: 首先判断原数字的正负,用flag记录一下。通过循环对10取余得到尾部数字,一步步乘10构造新的翻转后的整数。最后...

weixin_41873294的博客 211

leetcode记录7.Reverse Integer

leetcode记录7.Reverse Integer # # @lc app=leetcode id=7 lang=python # # [7] Reverse Integer # # https://leetcode.com/problems/reverse-integer/description/ # # algorithms # Easy (25.12%) # Total Accepted...

我的博客 181

[LeetCode-Easy][Python] 007-Reverse Integer

题目来源 https://leetcode.com/problems/reverse-integer/description/ Descirption:Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Example 2: Input...

a242647980的博客 143

[LeetCode] 007. Reverse Integer (Easy) (C++/Java/Python)

[LeetCode] 007. Reverse Integer (Easy) (C++/Java/Python)

水果君の日常 3662

Leetcode Reverse Integer overflow problem

Leetcode 刷题: 一个easy级别的题目。 Note: Assume we are dealing with an environment that could only store integers within the 32-bit signed integer range: [−231, 231 − 1]. For this problem, assume that your function returns 0 when the reversed integer overflows.

qq_40076228的博客 404

***【LeetCode 7Reverse Integer(Python)

Reverse digits of an integer. 实例: 输入: x = 123, 输出:321 Example2: x = -123, return -321 题目分析: 反转输入的整数。注意溢出问题。一开始我认为这是最简单的一道题了,结果,呵呵( ̄▽ ̄)” 。到现在为止一直没有提交成功。问过二姐后说是数据类型不行。不能解决长整型。具体怎么改,还没想好。另外再想想有没有办法把

Lucy_R的博客 321

Leetcode Easy 1 Reverse Integer

class Solution: def reverse(self, x): if x &gt;= 0: s = str(x) s = s[::-1] else: s = str(-x) s = s[::-1] s = '-' + s ...

likyoo的博客 190

2.[easy] Reverse Integer

Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 Have you thought about this? Here are some good questions to ask before coding. Bonus points for y

qq_21058391的博客 226

7. Reverse Integer(翻转整数)

Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Example 2: Input: -123 Output: -321 Example 3: Input: 120 Output: 21...

anqiu4023的博客 123

leetcode/Reverse Integer/easy/day2

题目Given a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123 Output: 321 Example 2:Input: -123 Output: -321 Example 3:Input: 120 Output: 21 Note:Assume we are dealing with an en...

u010969088的博客 161

LeetCode-easy-Reverse Integer

题目来源:https://leetcode.com/problems/reverse-integer/description/ 想到的两点: 第一整数如何变成字符 第二如何把数字翻转 number = input('请输入一个整数') if number 0: number = list(str(number)) number.pop(0) number.rever

u011644858的博客 210
上一篇: 6. ZigZag Conversion [easy] (Python)
下一篇: 155. Min Stack [easy] (Python)
coder_orz
博客等级 码龄14年 102粉丝 90原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值