LeetCode刷题日记(简单)- 58. 最后一个单词的长度

94 阅读1分钟

前言

一个小伙伴说希望成立一个刷题小组,本就着富强、民主、文明、和谐,倡导自由、平等、公正、法治,倡导爱国、敬业、诚信、友善,积极培育社会主义核心价值观,我答应他了。

因为也没有刷过题,比较菜。然后就看了下别人家的孩子怎么刷题的,这里附上链接。

-力扣传送门-

朝花夕拾 - 2019 总结(附 283 道 LeetCode 题解)

我是如何刷 LeetCode 的?

题目描述:

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

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

示例 1:

输入:s = "Hello World" 输出:5 解释:最后一个单词是“World”,长度为5。 示例 2:

输入:s = " fly me to the moon " 输出:4 解释:最后一个单词是“moon”,长度为4。 示例 3:

输入:s = "luffy is still joyboy" 输出:6 解释:最后一个单词是长度为6的“joyboy”。

解题:

    /**
 * @param {string} s
 * @return {number}
 * 这个题目就简单了,找到最后一个单词,单词左右边界是空格。
 * 我们知道单词长度肯定是大于1的
 */
var lengthOfLastWord = function(s) {
    let len = s.length-1;
    //先过滤最后的空格
    while(s[len]==" "&&len>0){
        len--
    }
    let returnLen = 0;
    //此时位置是最后一个单词结尾边界,要考虑最后一个位置0所以这里是大于等于0
    while(s[len]!==" "&&len>=0){
        len--
        returnLen++
    }
    return returnLen
};

有点简单就不多逼逼了。发了发了。