0%

length-of-last-word

Length of Last Word – LeetCode 58

Problem

Description

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.

Example

Input: “Hello World”
Output: 5

Answer

Original

Code

1
2
3
4
5
6
7
8
9
10
11
12
class Solution {
public:
int lengthOfLastWord(string s) {
int len = 0, tail = s.length() - 1;
while (tail >= 0 && s[tail] == ' ') tail--;
while (tail >= 0 && s[tail] != ' ') {
len++;
tail--;
}
return len;
}
};

思路

先用一次循环过滤可能的尾部空白字符,再用一次循环对最后一个单词进行计数。时间复杂度$O(n)$,空间复杂度$O(1)$。
耗时$3$ ms,排名$67.34\%$

Better

思路

这题目,这就够了。