题干:
给定一个仅包含大小写字母和空格 ' '
的字符串,返回其最后一个单词的长度。
如果不存在最后一个单词,请返回 0 。
说明:一个单词是指由字母组成,但不包含任何空格的字符串。
示例:
输入: "Hello World" 输出: 5水题,但要注意的地方还是很多,ac代码如下
class Solution { public: int lengthOfLastWord(string s) { int length = s.size(); vector<int>num; if(length == 0) return 0; int result = 0; for(int i = 0;i <length;i++) { if(s[i] != ' ' && s[i] != length - 1) result++; if(i == length -1 && s[i] != ' ') num.push_back(result); if(s[i]== ' ') { num.push_back(result); result = 0; } } for(int i = num.size() - 1;i >= 0;i--)//避免在"b a "的情况下出现错误 { if(num[i] > 0) { result = num[i]; break; } } if(result > 0) return result; else return 0; } };