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
用split()
1 public class Solution { 2 public int countSegments(String s) { 3 if (s==null || s.length()==0) return 0; 4 String[] strs = s.split(" "); 5 int count = 0; 6 for (String str : strs) { 7 if (str.length() != 0) count++; 8 } 9 return count; 10 } 11 }
不用API, better solution, O(N) time O(1) space
1 public int countSegments(String s) { 2 int res=0; 3 for(int i=0; i<s.length(); i++) 4 if(s.charAt(i)!=' ' && (i==0 || s.charAt(i-1)==' ')) 5 res++; 6 return res; 7 }