本题源自leetcode 58
------------------------------------------------------------------------------
思路:求出字符穿的长度,从尾遍历,如果是空格跳过。找到第一一个单词的长度。
代码1:
int lengthOfLastWord(string s) {
int n = s.size();
if(n == 0)
return 0;
int res = 0;
int end = n-1;
while(end >= 0 && s[end] == ' ')
end--;
while(end >=0 &&s[end] != ' '){
res++;
end--;
}
return res;
}
思路 2:从头遍历,遇见非空格就统计长度,遇见空格则让计数器等于0.
代码:
int lengthOfLastWord(string s) {
int n = s.size();
if(n == 0)
return 0;
int res = 0;
int i = 0;
while(i < n){
if(s[i++] != ' ')
res++;
else if(i < n && s[i] != ' ')
res = 0;
}
return res;
}