LeetCode(Python)—— 最后一个单词的长度(简单)

LeetCode(Python)—— 最后一个单词的长度(简单)概述 给你一个字符串 s 由若干单词组成 单词前后用一些空格字符隔开

最后一个单词的长度

概述:给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。单词是指仅由字母组成、不包含任何空格字符的最大子字符串。

输入:s = "Hello World"
输出:5

输入:s = "   fly me   to   the moon  "
输出:4

输入:s = "luffy is still joyboy"
输出:6

方法一:逆向遍历

思路:首先找到字符串中的最后一个字母,该字母即为最后一个单词的最后一个字母。从最后一个字母开始继续反向遍历字符串,直到遇到空格或者到达字符串的起始位置。

思路很简单,直接上代码!

#逆向遍历
class Solution:
    def lengthOfLastWord(self, s: str) -> int:
        n = len(s)
        index = n - 1
        while s[index] == ' ':
            index -= 1
        word_len = 0
        while index >= 0 and s[index] != ' ':
            word_len += 1
            index -= 1
        return word_len

方法二:split方法

思路:用split方式剔除掉字符串中的空格 ' ',并以列表 s_list 形式存储。

思路更加简单,直接上代码!

#split方法
class Solution:
    def lengthOfLastWord(self, s: str) -> int:
        s_list = [i for i in s.split(' ') if i]
        if not s_list:
            return 0
        return len(s_list[-1])

总结

人生苦短,Python延年!

编程小号
上一篇 2025-01-10 13:30
下一篇 2025-01-10 13:21

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/107271.html