LeetCode探索之旅(2)

今天写第二个题目,也选的比较简单的一个。
LeetCode第七题,反转整数,例如输入346,返回643,输入-368,返回-863。

分析问题:
这个题目其实就是将一个整数分开成一位一位,然后反过来合并。其实最开始有的想法是将整数中每位求出并放入数组中,然后再将数组进行前后调转,最后得到输出结果。但是很显然这样必须牺牲掉一部分内存空间,看了网上很多例子后,发现其实可以将存入数组这一步省略掉,时间复杂度一样。通过取余以及取除,这样就可以进行翻转了。这也只是完成了一个很简单的一步,这个题目还需要一个溢出问题,因为32位的最大整数,一但翻转后的数溢出,那么就会出现bug,导致输出报错。那么这样整型溢出是其中需要考虑的一个问题。最后一个问题是符号问题,如果是负数,需要加上判断,但是网上的一个大佬是没有加负号判断,这也是没有弄清楚的。

考虑点:
1、翻转的方法
2、整型溢出
3、正负值判断

问题:
1、对最大整数的概念忘记了,如何判断?

附上代码:

class Solution {
public:
    int reverse(int x) {
        int ans=0;
        while(x){
            int tmp=ans*10+x%10;
            if(tmp/10!=ans)
                return 0;
            ans=tmp;
            x=x/10;
        }
        return ans;
    }
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值