434. 字符串中的单词数

Introduction

Question: 434. 字符串中的单词数

统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。

请注意,你可以假定字符串里不包括任何不可打印的字符。

示例:

输入: "Hello, my name is John"
输出: 5
解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。

解法一

Analysis

从前向后遍历,统计s[i] != prev && prev == ' '的个数,prev为前一个字符,其初始值为' '

Implement

1
2
3
4
5
6
7
8
9
10
11
int countSegments(string s) {
int c = 0;
char prev = ' ';
for(auto ch: s) {
if (ch != prev && prev == ' ') {
c++;
}
prev = ch;
}
return c;
}