leetcode-字符转整数(常错的题)

1.解题注意点:

(1)首先,要注意到最大值和最小值的返回问题,根据题目的需要来选择。

(2)接着,就是如何解决空格等问题(在开头设置一个描点,然后来判断“+”,“-”)

  (3) 然后除去其他的符号的情况,判断是否在0-9,如果不是的话,break;

2.上代码:

/**
 * @param {string} str
 * @return {number}
 */
var myAtoi = function(str) {
    const max= 0x7fffffff;
    const min =-0x80000000;
    var flag = false;
    var st = 0;
    var ans = 0;
    var x = 0;
    while(str.length>0 && str[st] ==' ')
    {
        st++;
    }
    if(str.length>0 && str[st] =='+')
    {
        st++;
    }else{
        if(str.length>0 && str[st]=='-')
        {
            flag = true;
            st++;
        }
    }
    // console.log(st);
    for(let i = st;i<str.length;i++)
    {
        if(str[i]<='9'&&str[i]>='0')
        {
            x = str[i]-'0';
            ans = ans*10 +x;
        }else{
            break;
        }
     
    }
    if(flag){ans = -ans}
    if(ans>max){return max}
    if(ans<min){return min}
    
    
    return ans;
}


 

猜你喜欢

转载自blog.csdn.net/qq_42099097/article/details/107385563