码迷,mamicode.com
首页 > 其他好文 > 详细

[数学] leetcode 8 String to Integer (atoi)

时间:2019-08-03 00:32:34      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:tps   href   很多   find   为什么   max   div   size   long   

problem:https://leetcode.com/problems/string-to-integer-atoi/

        这题题号挺前的,但一直没做。今天提了5次才过,终于知道这道题为什么通过率这么低了。主要就是if/else练习,尤其是完全没看题后会挂在很多地方。

class Solution {
public:
    int myAtoi(string str) {
        unsigned long long res = 0;
        bool bPositive = true;
        bool bFind = false;
        for(int i = 0;i < str.size();i++)
        {
            if(str[i] ==  ) 
            {
                if(bFind) return bPositive ? res : -res;
                else continue;
            }
            if(!bFind && str[i] == -)
            {
                bFind = true;
                bPositive = false;
                continue;
            }
            if(!bFind && str[i] == +)
            {
                bFind = true;
                bPositive = true;
                continue;
            }           
            if(!isdigit(str[i])) return bPositive ? res : -res;
            bFind = true;
            unsigned long long num = str[i] - 0;
            res = 10 * res + num;
            if(res >= INT_MAX) 
            {
                if(!bPositive)
                {
                    if(res == INT_MAX) return -INT_MAX;
                    else return INT_MIN;
                }
                return INT_MAX;
            }
        }
        return bPositive ? res : -res;
    }
};

 

[数学] leetcode 8 String to Integer (atoi)

标签:tps   href   很多   find   为什么   max   div   size   long   

原文地址:https://www.cnblogs.com/fish1996/p/11291718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!