434. Number of Segments in a String
1. Description
You are given a string s, return the number of segments in the string.
A segment is defined to be a contiguous sequence of non-space characters.
2. Example
Example 1:
Input: s = “Hello, my name is John”
Output: 5
Explanation: The five segments are [“Hello,”, “my”, “name”, “is”, “John”]
Example 2:
Input: s = “Hello”
Output: 1
Example 3:
Input: s = “love live! mu’sic forever”
Output: 4
Example 4:
Input: s = ""
Output: 0
3. Constraints
- 0 <= s.length <= 300
- s consists of lower-case and upper-case English letters, digits or one of the following characters “!@#$%^&*()_+-=',.:”.
- The only space character in s is ' ‘.
4. Solutions
My Accepted Solution
n = i_str.size()
Time complexity: O(n)
Space complexity: O(1)
class Solution
{
public:
// int countSegments(string s)
int countSegments(string &i_str)
{
int result = 0;
for(int i = 1; i < i_str.size(); i++)
{
if(i_str[i - 1] == ' ' && i_str[i] != ' ')
result++;
}
return result;
}
};