题目描述
Given a string s consists of upper/lower-case alphabets and empty space characters ' '
, return the length of last word in the string.
If the last word does not exist, return 0.
Note: A word is defined as a character sequence consists of non-space characters only.
For example,
Given s = "Hello World"
,
return 5
.
解题思路
解决本题的关键就是从尾至头扫描字符串,略去空格,计算出最后一个单词的长度。
代码
public int lengthOfLastWord(String s) {
if(s==null || s.length()==0){
return 0;
}
int posTail = s.length()-1;
int posHead = 0;
while(posTail >=0 && s.charAt(posTail)==' '){
//循环略去空格
posTail--;
}
if(posTail==-1){
return 0;
} else {
posHead = posTail;
while(posHead >= 0 && s.charAt(posHead)!=' '){
posHead--;
}
return posTail - posHead;
}
}