1. 程式人生 > >Leetcode434. Number of Segments in a String

Leetcode434. Number of Segments in a String

題目
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
要求
給出一個字串,計算字串中的欄位數
思路
除去字串兩端的空格,利用中間的空格來計算欄位數,同時出現兩個空格不能算一個欄位。
程式碼

public class Solution {
    public int countSegments(String s) {
        //判斷字串是否長度為0或者都是空格,如果是則欄位為0
       if(s.length()==0||s.trim().isEmpty()) return 0;
       //把字串兩端的空格都去掉
         String str=s.trim();
         int j=0;
         for(int i=0;i<str.length();i++){
             //空格減去‘A’是-33.如果這個字元是空格,但是下一個字元不是空格,則是一個欄位
if(str.charAt(i)-'A'==-33&&str.charAt(i+1)-'A'!=-33) j++; } if(j==0) return 1; else return j+1; } }

原題地址