题目:
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.
题意:
给定一个字符串,包含大小写或者空格。
思路:
把字符串先反转,然后找第一个word的长度。
以上。
代码如下:
class Solution {
public:
int lengthOfLastWord(string s) {
if(s.empty())return 0;
int first = 0, second = s.length() - 1;
while(first < second) {
swap(s[first], s[second]);
first++;
second--;
}
first = 0;
while(first < s.size() && s[first] == ' ')first++;
second = first;
while(second < s.size() && s[second] != ' ')second++;
return second - first;
}
};