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;
}


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flower in my heart

你的鼓励就是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值