力扣58:最后一个单词的长度

def lengthOfLastWord(self, s: str) -> int:
        i=len(s)-1
        while i>=0 and s[i]==" ":
            i-=1
        j=i
        while j>=0 and s[j]!=" ":
            j-=1
        return i-j

 

看到这个题目是让我们计算字符串最后一个单词的长度,我的想法就是倒序做法,即直接从后面进行遍历。首先我们需要知道字符串的长度,然后从字符串的最后一位开始遍历,直到出现" "停止即可。我一开始就是这么写的。然后在代码运行时成功了,但是在提交阶段报错,去查看相关的原因,发现是字符串的最后有空格,而我的没有考虑到,这时我发现自己写的代码有问题,没有考虑到这种情况,所以我又在我的代码中加了一个指针,改为双指针。第一个指针首先对字符串的最后有无" "进行判断,并进行相应的计算,然后再根据上一步的结果进行下面的计算,最后两个指针相减就可以得到最后一个单词的长度。

posted @ 2021-09-21 11:08  hongnal  阅读(43)  评论(0)    收藏  举报