刷題-力扣-434. 字串中的單詞數
阿新 • • 發佈:2021-10-07
434. 字串中的單詞數
題目連結
來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/number-of-segments-in-a-string
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。
題目描述
統計字串中的單詞個數,這裡的單詞指的是連續的不是空格的字元。
請注意,你可以假定字串裡不包括任何不可列印的字元。
示例:
輸入: "Hello, my name is John"
輸出: 5
解釋: 這裡的單詞是指連續的不是空格的字元,所以 "Hello," 算作 1 個單詞。
題目分析
- 根據題目描述計算字串s中的單詞數
- 單詞與單詞之間以空格分割,只需判斷s[i-1]不是空格s[i]是空格,就可以認為s[i-1]是單詞的結尾
- 當遍歷結束,字串s的末尾不是空格時,再將單詞數加一
程式碼
class Solution { public: int countSegments(string s) { int num = 0; int sLen = s.length(); if(sLen == 0) { return 0; } for (int i = 1; i < sLen; ++i) { if (s[i - 1] != ' ' && s[i] == ' ') { ++num; } } return s[sLen - 1] == ' ' ? num : num + 1; } };