mirror of
https://github.com/halfrost/LeetCode-Go.git
synced 2025-07-04 16:12:47 +08:00
Merge pull request #172 from gostool/leetcode0434
add: leetcode 0434 solution
This commit is contained in:
@ -0,0 +1,18 @@
|
||||
package leetcode
|
||||
|
||||
func countSegments(s string) int {
|
||||
segments := false
|
||||
cnt := 0
|
||||
for _, v := range s {
|
||||
if v == ' ' && segments {
|
||||
segments = false
|
||||
cnt += 1
|
||||
} else if v != ' ' {
|
||||
segments = true
|
||||
}
|
||||
}
|
||||
if segments {
|
||||
cnt++
|
||||
}
|
||||
return cnt
|
||||
}
|
@ -0,0 +1,55 @@
|
||||
package leetcode
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
type question434 struct {
|
||||
para434
|
||||
ans434
|
||||
}
|
||||
|
||||
// s 是参数
|
||||
type para434 struct {
|
||||
s string
|
||||
}
|
||||
|
||||
// ans 是答案
|
||||
type ans434 struct {
|
||||
ans int
|
||||
}
|
||||
|
||||
func Test_Problem434(t *testing.T) {
|
||||
|
||||
qs := []question434{
|
||||
|
||||
{
|
||||
para434{"Hello, my name is John"},
|
||||
ans434{5},
|
||||
},
|
||||
|
||||
{
|
||||
para434{"Hello"},
|
||||
ans434{1},
|
||||
},
|
||||
|
||||
{
|
||||
para434{"love live! mu'sic forever"},
|
||||
ans434{4},
|
||||
},
|
||||
|
||||
{
|
||||
para434{""},
|
||||
ans434{0},
|
||||
},
|
||||
}
|
||||
|
||||
fmt.Printf("------------------------Leetcode Problem 434------------------------\n")
|
||||
|
||||
for _, q := range qs {
|
||||
_, p := q.ans434, q.para434
|
||||
fmt.Printf("【input】:%v 【output】:%v\n", p, countSegments(p.s))
|
||||
}
|
||||
fmt.Printf("\n\n\n")
|
||||
}
|
45
leetcode/0434.Number-of-Segments-in-a-String/README.md
Normal file
45
leetcode/0434.Number-of-Segments-in-a-String/README.md
Normal file
@ -0,0 +1,45 @@
|
||||
# [434. Number of Segments in a String](https://leetcode-cn.com/problems/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 ' '.
|
||||
|
||||
## 题目大意
|
||||
|
||||
统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。
|
||||
|
||||
请注意,你可以假定字符串里不包括任何不可打印的字符。
|
||||
|
||||
## 解题思路
|
||||
|
||||
- 以空格为分割计算元素个数
|
Reference in New Issue
Block a user