leetcode解题: Number of Segments in a String (434)

Count the number of segments in a string, where a segment is defined to be a contiguous sequence of non-space characters.

Please note that the string does not contain any non-printable characters.

Example:

Input: “Hello, my name is John”
Output: 5

解法1:O(N)

按每一个segment的开头来判断一个segment的开始。

C++

1
2
3
4
5
6
7
8
9
10
11
12
class Solution {
public:
int countSegments(string s) {
int res = 0;
for (int i = 0; i < s.size(); ++i) {
if (s[i] != ' ' && (i == 0 || s[i - 1] == ' ')) {
++res;
}
}
return res;
}
};

Java

1