题目
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例 1:
输入:s = "Hello World"
输出:5
示例 2:
输入:s = " "
输出:0
提示:
1 <= s.length <= 10^4 s 仅有英文字母和空格 ’ ’ 组成
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/length-of-last-word 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
JS实现
参考代码1:
/**
* @param {string} s
* @return {number}
*/
var lengthOfLastWord = function (s) {
//获取最后一个字符的下标
let endIndex = s.length - 1;
//如果下标大于等于0,并且最后一个字符等于空字符串
while (endIndex >= 0 && s[endIndex] == " ") {
endIndex--;
}
if (endIndex < 0) {
return 0;
}
let startIndex = endIndex;
while (startIndex >= 0 && s[startIndex] != " ") {
startIndex--;
}
return endIndex - startIndex;
};
参考代码2:
/**
* @param {string} s
* @return {number}
*/
var lengthOfLastWord = function (s) {
s = s && s.trim();
const words = s.split(' ');
const len = words.length;
return words[len - 1] ? words[len - 1].length : 0;
};