leedcode-字符串中的单词数

class Solution:
    def countSegments(self, s: str) -> int:
        n = len(s)
        # 如果字符串长度为1且不是空格,则只有一个段
        if n == 1 and s[0] != ' ':
            return 1
        # 如果字符串长度为1且是空格,则没有段
        if n == 1 and s[0] == ' ':
            return 0
        
        slow_ptr = 0  # 开始指针
        fast_slow = 1  # 结束指针
        count = 0  # 段计数
        
        while fast_slow <= n - 1:
            # 如果开始指针指向非空格字符,且结束指针指向空格字符,表示找到一个段
            if s[slow_ptr] != ' ' and s[fast_slow] == ' ':
                count += 1
            # 如果结束指针指向最后一个字符且为非空格字符,则表示还有一个段
            elif fast_slow == n - 1 and s[fast_slow] != ' ':
                return count + 1
            fast_slow += 1
            slow_ptr += 1

        return count

 

posted @ 2024-04-29 14:01  Junior_bond  阅读(1)  评论(0编辑  收藏  举报