slice.go
517 Bytes
package uttype
import "math/rand"
// Min 最小值
func Min[T Number](values ...T) T {
result := values[0]
for _, v := range values[1:] {
if v < result {
result = v
}
}
return result
}
// Max 最大值
func Max[T Number](values ...T) T {
result := values[0]
for _, v := range values[1:] {
if v > result {
result = v
}
}
return result
}
// Shuffle 打乱
func Shuffle[T any](list []T) {
for i := len(list) - 1; i > 0; i-- {
j := rand.Intn(i + 1)
list[i], list[j] = list[j], list[i]
}
}