0
点赞
收藏
分享

微信扫一扫

力扣每日一题【字符串转换整数 (atoi)】

腊梅5朵 2022-02-13 阅读 100

在这里插入图片描述
在这里插入图片描述

题目链接: 字符串转换整数 (atoi).
b站视频: 字符串转换整数 (atoi).

class Solution {
public:
    int myAtoi(string s) {
        if(s.empty()) return 0;
        int index = 0;
        int flag = 1; //符号
        long num = 0;
        while(s.size() > 0 && s[index] == ' ') index++;  //处理空格

        //处理非数字字符
        while(s[index] > '9' && s[index] < '0') index++;
        //处理符号
        if(s[index] == '-' && s[index + 1] == '+') return 0;
        if(s[index] =='-') flag *= -1, index++;
        if(s[index] == '+') index++;

        while(s[index] >= '0' && s[index] <= '9'){
            num = num * 10 + s[index] - '0'; 
            if(num - 1 >= INT_MAX) break;
            index++;
        }

        num *= flag;
        if(num > INT_MAX) num = INT_MAX;
        if(num < INT_MIN) num = INT_MIN;
        return num;
    }
};

在这里插入图片描述

举报

相关推荐

0 条评论