不是很明白出题人的意图,其实这道题用java的话简直是太简单了,用split处理一下,得到所有单词的一个数组,然后求最后一个的长度就行了。我个人觉得java里最成功的函数就是split了,我做工程时几乎总能用到它,方便强大。
c++里面稍微复杂一些,不过这也算是最简单的字符串的问题了。函数的接口决定了字符串的长度是未知的,要自己循环找一下,然后从尾向头找不等于空格的字符,找到了就找到了最后一个单词,然后累计直到空格结束。
class Solution { public: int lengthOfLastWord(const char *s) { if(s == NULL) return 0; int len = 0, res = 0; while(s[len] != ‘\0‘) len++; len--; while(s[len] == ‘ ‘) len--; while(len>=0&&s[len] != ‘ ‘){ len--; res++; } return res; } };
leetcode第一刷_Length of Last Word,布布扣,bubuko.com
leetcode第一刷_Length of Last Word
原文:http://blog.csdn.net/u012792219/article/details/25658077