58. 最后一个单词的长度
题目要求:
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
解题思路:
- 从后向前遍历;
- 当遍历到字母后,再遍历到空格(或者最后一个元素)则返回nums长度。
题解代码:
class Solution:
def lengthOfLastWord(self, s: str) -> int:
#计算字符串的长度
n = len(s)
#计算最后单词的长度,初值为0
nums = 0
#从右向左遍历字符串
for i in range(n-1,-1,-1):
#当遍历到的值不为空格时,单词长度+1
if s[i] != " ":
nums += 1
#当遍历到空格时,判断nums是否为0
else:
#nums不为0,说明已经遍历完了最后一个单词
if nums != 0:
return nums
#为0说明还没有遍历到字母
else:
pass
#如果没有单词返回初值
return nums
(“人间正道是沧桑!
”FIGHTING. . . .)