版权声明:本文为博主原创文章,未经博主允许不得转载。
难度:容易
要求:
给定一个字符串, 包含大小写字母、空格' ',请返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
样例
给定 s = "Hello World",返回 5。
思路:
注意可能出现字符串形式:
1."b a " 空格隔开
2." b a" 空格隔开
3."a" 全是单词
4." " 全是空格
/**
* "b a " "a" " "
*
* @param s A string
* @return the length of last word
*/
public int lengthOfLastWord(String s) {
int len = s.length();
int last = -1;//记录最后一个字母出现的位置
for(int i = len - 1; i >= 0; i--){
char c = s.charAt(i);
if(last < 0){
if(' ' - c != 0){
last = i;
}
}
if(last >= 0 && ' ' - c == 0){//计算单词位置
return last - i;
}
}
//如果都是空格 ' '
if(last < 0){
return 0;
}
return len;
}