Skip to main content

58.最后一个单词的长度

思路

由于是找最后一个单词,所以可以想到直接从后往前找,因为有可能最后有空格,所以可以先记录最后一个单词的最后一个字母所在的位置,然后从这个位置开始再从后往前找到第一个空格结束。此时利用这个位置分割出字符串的子串即可。

代码

python API 暴力:

class Solution:
def lengthOfLastWord(self, s: str) -> int:
word = s.strip().split(" ")
return len(word[-1])

C++:

class Solution {
public:
int lengthOfLastWord(string s) {
int pos = s.size() - 1;

while (pos >= 0 && s[pos] == ' ') pos--;
int j = pos;
while (pos >= 0 && s[pos] != ' ') pos--;

string last = s.substr(pos + 1, j - pos);
return last.size();
}
};