mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
455.分发饼干增加Go解法
This commit is contained in:
@ -226,21 +226,36 @@ class Solution:
|
||||
```
|
||||
|
||||
### Go
|
||||
```golang
|
||||
//排序后,局部最优
|
||||
|
||||
版本一 大饼干优先
|
||||
```Go
|
||||
func findContentChildren(g []int, s []int) int {
|
||||
sort.Ints(g)
|
||||
sort.Ints(s)
|
||||
|
||||
// 从小到大
|
||||
child := 0
|
||||
for sIdx := 0; child < len(g) && sIdx < len(s); sIdx++ {
|
||||
if s[sIdx] >= g[child] {//如果饼干的大小大于或等于孩子的为空则给与,否则不给予,继续寻找选一个饼干是否符合
|
||||
child++
|
||||
index := len(s) - 1
|
||||
result := 0
|
||||
for i := len(g) - 1; i >= 0; i-- {
|
||||
if index >= 0 && s[index] >= g[i] {
|
||||
result++
|
||||
index--
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
||||
```
|
||||
|
||||
return child
|
||||
版本二 小饼干优先
|
||||
```Go
|
||||
func findContentChildren(g []int, s []int) int {
|
||||
sort.Ints(g)
|
||||
sort.Ints(s)
|
||||
index := 0
|
||||
for i := 0; i < len(s); i++ {
|
||||
if index < len(g) && g[index] <= s[i] {
|
||||
index++
|
||||
}
|
||||
}
|
||||
return index
|
||||
}
|
||||
```
|
||||
|
||||
|
Reference in New Issue
Block a user