Leetcode-58: Length of Last Word

这题较易,但陷阱也不少。 我的解法是把string s倒置过来,找第一个非空字符串。 注意: 1) "a   "的情况。此时要用一个while()遍历所有

这题较易,但陷阱也不少。

我的解法是把string s倒置过来,找第一个非空字符串。

注意:

1) "a   "的情况。此时要用一个while()遍历所有的空格。
2) " "的情况,此时要注意pos不能超界。

#include 
#include 
#include using namespace std;int lengthOfLastWord(string s) {if (!s.size()) return 0;string s_orig(s);reverse(s.begin(), s.end());size_t pos = s.find(' ');if (pos==string::npos) return (int)(s_orig.size());else if (pos==0) { //for the case of "a " or "a     "while((pos