力扣刷题Days4(js)

题目:(对自己来说,相对也是较为简单的一题)

给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。

单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

关键提醒:没有标点符号 只有单词和空格构成


1,代码

/**
 * @param {string} s
 * @return {number}
 */
var lengthOfLastWord = function(s) {
   let end = s.length - 1;
    while(end >= 0 && s[end] == ' ') end--;
    if(end < 0) return 0;
    let start = end;
    //注意:start >= 0 遍历到字符串的起始位置 是必要的条件之一  并不是控制字符串非空
    while(start >= 0 && s[start] != ' ') start--;
    return end - start;
};

2,学习与总结

2.1思想

  • 反向遍历
  • 单词+空格=>想到要处理掉末尾是空格的情况
  • 字符串基础函数           s.length求长度  利用下标,和数组相似

2.2反思后的注意点

 

  while(start >= 0 && s[start] != ' ') start--;

start >= 0 遍历到字符串的起始位置 是必要的条件之一  并不是控制字符串非空
 


告诫自己:贵在坚持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值