题目
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例
输入:s = “Hello World”
输出:5
示例 2:
输入:s = " "
输出:0
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/length-of-last-word
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
想法
1、先用 rstrip() 函数,压缩右边空格。
2、如果压缩后只有一个字母,则输出1.
3、遍历压缩后的字符串~并输出。
实现
方法1:python
class Solution:
def lengthOfLastWord(self, s: str) -> int:
ss=s.rstrip()
n,count=len(ss),0
if n==1:
return 1
for i in range(n-1,-1,-1):
if s[i].isalpha():
count+=1
else:
break
return count

方法2:java
class Solution {
public int lengthOfLastWord(String s) {
int count = 0;
for (int i = s.length() - 1; i >= 0; i--) {
// 最后一个单词末尾字母
if ((s.charAt(i) >= 'A' && s.charAt(i) <= 'Z') || (s.charAt(i) >= 'a' && s.charAt(i) <= 'z')) {
count++;
continue;
} else if (count != 0 && (s.charAt(i) < 'A' || s.charAt(i) > 'z' || (s.charAt(i) > 'Z' && s.charAt(i) < 'a'))) {
break;
}
}
return count;
}
}

本文介绍了如何使用Python和Java两种编程语言解决LeetCode上的问题,即给定字符串找出最后一个单词的长度,包括示例、思路和代码实现。
332

被折叠的 条评论
为什么被折叠?



