Skip to content

Commit c52c7c9

Browse files
authored
feat: use the built-in slices.Min/Max functions in Go 1.21.0+ (doocs#1936)
1 parent 24b6035 commit c52c7c9

File tree

5 files changed

+7
-57
lines changed

5 files changed

+7
-57
lines changed

lcp/LCP 34. 二叉树染色/README.md

+2-12
Original file line numberDiff line numberDiff line change
@@ -172,25 +172,15 @@ func maxValue(root *TreeNode, k int) int {
172172
}
173173
l := dfs(node.Left)
174174
r := dfs(node.Right)
175-
ans[0] = max(l...) + max(r...)
175+
ans[0] = slices.Max(l) + slices.Max(r)
176176
for i := 0; i < k; i++ {
177177
for j := 0; j < k-i; j++ {
178178
ans[i+j+1] = max(ans[i+j+1], l[i]+r[j]+node.Val)
179179
}
180180
}
181181
return ans
182182
}
183-
return max(dfs(root)...)
184-
}
185-
186-
func max(nums ...int) int {
187-
ans := nums[0]
188-
for _, x := range nums {
189-
if x > ans {
190-
ans = x
191-
}
192-
}
193-
return ans
183+
return slices.Max(dfs(root))
194184
}
195185
```
196186

lcp/LCP 34. 二叉树染色/Solution.go

+2-12
Original file line numberDiff line numberDiff line change
@@ -15,23 +15,13 @@ func maxValue(root *TreeNode, k int) int {
1515
}
1616
l := dfs(node.Left)
1717
r := dfs(node.Right)
18-
ans[0] = max(l...) + max(r...)
18+
ans[0] = slices.Max(l) + slices.Max(r)
1919
for i := 0; i < k; i++ {
2020
for j := 0; j < k-i; j++ {
2121
ans[i+j+1] = max(ans[i+j+1], l[i]+r[j]+node.Val)
2222
}
2323
}
2424
return ans
2525
}
26-
return max(dfs(root)...)
27-
}
28-
29-
func max(nums ...int) int {
30-
ans := nums[0]
31-
for _, x := range nums {
32-
if x > ans {
33-
ans = x
34-
}
35-
}
36-
return ans
26+
return slices.Max(dfs(root))
3727
}

solution/1700-1799/1787.Make the XOR of All Segments Equal to Zero/README.md

+1-11
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ func minChanges(nums []int, k int) int {
196196
}
197197
for i, sz := range size {
198198
g := make([]int, n)
199-
x := min(f...) + sz
199+
x := slices.Min(f) + sz
200200
for i := range g {
201201
g[i] = x
202202
}
@@ -209,16 +209,6 @@ func minChanges(nums []int, k int) int {
209209
}
210210
return f[0]
211211
}
212-
213-
func min(a ...int) int {
214-
mi := a[0]
215-
for _, v := range a {
216-
if mi > v {
217-
mi = v
218-
}
219-
}
220-
return mi
221-
}
222212
```
223213

224214
### **...**

solution/1700-1799/1787.Make the XOR of All Segments Equal to Zero/README_EN.md

+1-11
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ func minChanges(nums []int, k int) int {
158158
}
159159
for i, sz := range size {
160160
g := make([]int, n)
161-
x := min(f...) + sz
161+
x := slices.Min(f) + sz
162162
for i := range g {
163163
g[i] = x
164164
}
@@ -171,16 +171,6 @@ func minChanges(nums []int, k int) int {
171171
}
172172
return f[0]
173173
}
174-
175-
func min(a ...int) int {
176-
mi := a[0]
177-
for _, v := range a {
178-
if mi > v {
179-
mi = v
180-
}
181-
}
182-
return mi
183-
}
184174
```
185175

186176
### **...**

solution/1700-1799/1787.Make the XOR of All Segments Equal to Zero/Solution.go

+1-11
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ func minChanges(nums []int, k int) int {
1515
}
1616
for i, sz := range size {
1717
g := make([]int, n)
18-
x := min(f...) + sz
18+
x := slices.Min(f) + sz
1919
for i := range g {
2020
g[i] = x
2121
}
@@ -27,14 +27,4 @@ func minChanges(nums []int, k int) int {
2727
f = g
2828
}
2929
return f[0]
30-
}
31-
32-
func min(a ...int) int {
33-
mi := a[0]
34-
for _, v := range a {
35-
if mi > v {
36-
mi = v
37-
}
38-
}
39-
return mi
4030
}

0 commit comments

Comments
 (0)