https://leetcode.com/problems/length-of-last-word/
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.
class Solution { public: int lengthOfLastWord(string s) { size_t n = s.length(); size_t lb = 0, ub = n - 1; reverse(s.begin(), s.end()); while (lb < n) { if (s[lb] == ‘ ‘) lb++; else break; } while (ub >= 0) { if (s[ub] == ‘ ‘) ub--; else break; } if (lb == n && ub == -1) return 0; int ans = 0; for (size_t i = lb; i <= ub; i++) { if (s[i] != ‘ ‘) ans++; else break; } return ans; } };
原文:http://www.cnblogs.com/GadyPu/p/5040115.html