434. Number of Segments in a String

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.

 

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

 

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 ' '.

Rust Solution

struct Solution;

impl Solution {
    fn count_segments(s: String) -> i32 {
        s.split_whitespace().count() as i32
    }
}

#[test]
fn test() {
    let s = "Hello, my name is John".to_string();
    assert_eq!(Solution::count_segments(s), 5);
}

Having problems with this solution? Click here to submit an issue on github.