leetcode58 Length of Last Word-zh
# 58. 最后一个单词的长度 (opens new window)
English Version (opens new window)
# 题目描述
给你一个字符串 s
,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例 1:
输入:s = "Hello World" 输出:5
示例 2:
输入:s = " " 输出:0
提示:
1 <= s.length <= 104
s
仅有英文字母和空格' '
组成
# 解法
# Python3
class Solution:
def lengthOfLastWord(self, s: str) -> int:
last_word_length = 0
meet_word = False
for i in range(len(s) - 1, -1, -1):
ch = ord(s[i])
if ch >= 65 and ch <= 122:
meet_word = True
last_word_length += 1
elif meet_word:
break
return last_word_length
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# Java
class Solution {
public int lengthOfLastWord(String s) {
int n = s.length();
int lastWordLength = 0;
boolean meetWord = false;
for (int i = n - 1; i >= 0; --i) {
char ch = s.charAt(i);
if (ch >= 'A' && ch <= 'z') {
meetWord = true;
++lastWordLength;
} else if (meetWord) {
break;
}
}
return lastWordLength;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# ...
1
编辑 (opens new window)
上次更新: 2021/10/30, 12:58:38