一、题目
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例 1:
输入:s = "Hello World"
输出:5
示例 2:
输入:s = " "
输出:0
提示:
1 <= s.length <= 104
s 仅有英文字母和空格 ' ' 组成
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/length-of-last-word
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
二、题解
注意,结尾可能是空格,需要先踢掉结尾空格后,才能找到最后一个单词
三、代码
执行结果:
通过
显示详情
执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户
内存消耗:36.5 MB, 在所有 Java 提交中击败了93.57%的用户
class Solution {
public static int lengthOfLastWord(String s) {
int end = s.length() - 1;
int start = 0;
while(end >= 0 && s.charAt(end) == ' ') end--;
while(end >= 0 && s.charAt(end) != ' ') {
end--;
start++;
}
return start;
}
public static void main(String[] args) {
System.out.println(lengthOfLastWord(" aa bbb "));
}
}