1. 问题描述:
统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。请注意,你可以假定字符串里不包括任何不可打印的字符。
示例:
输入: "Hello, my name is John"
输出: 5
解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/number-of-segments-in-a-string
2. 思路分析:
这是一道简单的双指针问题,声明两个指针i,j,当前位置s[i]为空格的时候continue,不为空格的时候那么指针j往后移动找到连续的单词,计数加1即可。
3. 代码如下:
class Solution:
def countSegments(self, s: str) -> int:
i, j = 0, 0
res = 0
while i < len(s):
if s[i] == " ":
i += 1
continue
j = i + 1
while j < len(s) and s[j] != " ": j += 1
i = j + 1
res += 1
return res