问题描述
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例
输入:s = “Hello World”
输出:5
题解
需要注意几点:
- 字符串长度为0;
- 字符串结尾有多个空格
先对字符串进行处理:去除结尾的空格;
从字符串后往前扫描,遇到空格,即得到最后一个单词的长度。
源码
class Solution {
public int lengthOfLastWord(String s) {
s=s.trim();
int len=s.length();
if(len==0){
return 0;
}
int k=0;
for(int i=len-1;i>=0;i--){
if(s.charAt(i)==' '){
k=len-i-1;
break;
}
else if(i==0){
k=len;
break;
}
}
return k;
}
}