Less instructions on min and max

This commit is contained in:
Sergio Moura
2022-03-03 14:20:55 -05:00
committed by GitHub
parent 4e339add08
commit 9d1979e334
+14 -12
View File
@@ -49,13 +49,14 @@ func Find[T any](collection []T, predicate func(T) bool) (T, bool) {
func Min[T Ordered](collection []T) T {
var min T
for i := 0; i < len(collection); i++ {
item := collection[i]
if len(collection) == 0 {
return min
}
if i == 0 {
min = item
continue
}
min = collection[0]
for i := 1; i < len(collection); i++ {
item := collection[i]
// if item.Less(min) {
if item < min {
@@ -70,13 +71,14 @@ func Min[T Ordered](collection []T) T {
func Max[T Ordered](collection []T) T {
var max T
for i := 0; i < len(collection); i++ {
item := collection[i]
if len(collection) == 0 {
return max
}
if i == 0 {
max = item
continue
}
max = collection[0]
for i := 1; i < len(collection); i++ {
item := collection[i]
if item > max {
max = item