专栏首页mathorLeetCode8. 字符串转整数 (atoi)

LeetCode8. 字符串转整数 (atoi)

 多考虑一些细节即可

class Solution {
    public int myAtoi(String str) {
        long ans = 0,MAX_INT = (long)Integer.MAX_VALUE + 1;
        boolean flag = false;
        int st = 0;
        while(st < str.length() && str.charAt(st) == ' ') {
            st++;
        }
        if(st < str.length() && str.charAt(st) == '+')
            st++;
        else {
            if(st < str.length() && str.charAt(st) == '-') {
                st++;
                flag = true;
            }
        }
        for(int i = st;i < str.length();i++) {
            if(str.charAt(i) <= '9' && str.charAt(i) >= '0') {
                ans = ans * 10 + str.charAt(i) - '0';
                if(ans > MAX_INT)
                    ans = MAX_INT;
            }         
            else
                break;
        }
        if(flag)
            ans = -ans;
        if(ans > Integer.MAX_VALUE)
            ans = Integer.MAX_VALUE;
        if(ans < Integer.MIN_VALUE)
            ans = Integer.MIN_VALUE;
        return (int)ans;
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux——远程登陆管理工具

    mathor
  • 枚举+优化(6)——双指针优化2

    mathor
  • File

    mathor
  • Educational Codeforces Round 82 (Rated for Div. 2)

    思路:我的思路是记录每个1出现的位置,然后在进行遍历得到每相邻的1之间的距离。然后都加起来输出就行了

    用户7727433
  • Day4

    r.apparent_encoding:  从内容中分析出的响应内容编码方式(备选编码方式)

    IT人一直在路上
  • Python3获取本机公网ip(爬虫法)

    今天试用了google的python在线编程工具colab,确实很好用,当时好奇在线环境的主机ip是多少? 在网上查了半小时的方法后, 都不好用,后来灵机一动...

    zhaoolee
  • 规范

    一个前端项目,目录的规范是必要的,当然,在一般开发中是没有必要做的那么严谨,在此,分享一下个人认为的基础规范,都只是个人认为。

    wade
  • 24:蛇形填充数组

    24:蛇形填充数组 总时间限制: 1000ms 内存限制: 65536kB描述 用数字1,2,3,4,...,n*n这n2个数蛇形填充规模为n*n的方阵。 ...

    attack
  • Angular CLI的安装和使用

    打开文件夹:C:\Users\i042416\appdata\roaming\npm\node_modules@angular\cli\bin

    Jerry Wang
  • 【Unity游戏开发】Lua中的os.date和os.time函数

      最近马三在工作中经常使用到了lua 中的 os.date( ) 和 os.time( )函数,不过使用的时候都是不得其解,一般都是看项目里面怎么用,然后我就...

    马三小伙儿

扫码关注云+社区

领取腾讯云代金券