题目
给你一个字符串 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
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解
从右往左遍历 遇到非空字母才算 遇到空字符才停
class Solution {
public int lengthOfLastWord(String s) {
if(s.length()==0) return 0;
StringBuilder sb = new StringBuilder();
int i=s.length()-1;
while(i>=0&&s.charAt(i)==' '){
i--;
}
if(i==-1) return 0;
for(int j=i;j>=0;j--){
if(s.charAt(j)!=' '){
sb.append(s.charAt(j));
}else{
break;
}
}
return sb.toString().length();
}
}