给定一个字符串, 包含大小写字母、空格' ',请返回其最后一个单词的长度。
如果不存在最后一个单词,请返回 0 。
样例
给定 s = "Hello World",返回 5。
从后向前遍历
直接从后向前遍历,遇见字母计数器加1,遇见空格的话检查计数器,如果计数器有值(大于0),那么直接返回,如果遍历结束都没有遇到空格那么先检查num是否大于0(lintcode的测试库竟然没有这种数据,比如这种:“asd ”),如果大于0就返回num的大小,否则返回字符串的大小。
int lengthOfLastWord(string &s) {
if(s.size()==0)
return 0;
int num=0;
for(auto end=s.end()-1;end>=s.begin();end--)
{
if(*end!=' ')
num++;
else if(num!=0)
return num;
}
if(num!=0)
return num;
else
return s.size();
// write your code here
}