✨ 增加数字取大小辅助函数 Min、Max、MinMax、MaxMin
This commit is contained in:
parent
2add117daa
commit
3c4eb23041
|
@ -1,5 +1,9 @@
|
||||||
package maths
|
package maths
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/kercylan98/minotaur/utils/generic"
|
||||||
|
)
|
||||||
|
|
||||||
// Pow 整数幂运算
|
// Pow 整数幂运算
|
||||||
func Pow(a, n int) int {
|
func Pow(a, n int) int {
|
||||||
if a == 0 {
|
if a == 0 {
|
||||||
|
@ -47,3 +51,35 @@ func PowInt64(a, n int64) int64 {
|
||||||
}
|
}
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Min 返回两个数之中较小的值
|
||||||
|
func Min[V generic.Number](a, b V) V {
|
||||||
|
if a < b {
|
||||||
|
return a
|
||||||
|
}
|
||||||
|
return b
|
||||||
|
}
|
||||||
|
|
||||||
|
// Max 返回两个数之中较大的值
|
||||||
|
func Max[V generic.Number](a, b V) V {
|
||||||
|
if a > b {
|
||||||
|
return a
|
||||||
|
}
|
||||||
|
return b
|
||||||
|
}
|
||||||
|
|
||||||
|
// MinMax 将两个数按照较小的和较大的顺序进行返回
|
||||||
|
func MinMax[V generic.Number](a, b V) (min, max V) {
|
||||||
|
if a < b {
|
||||||
|
return a, b
|
||||||
|
}
|
||||||
|
return b, a
|
||||||
|
}
|
||||||
|
|
||||||
|
// MaxMin 将两个数按照较大的和较小的顺序进行返回
|
||||||
|
func MaxMin[V generic.Number](a, b V) (max, min V) {
|
||||||
|
if a > b {
|
||||||
|
return a, b
|
||||||
|
}
|
||||||
|
return b, a
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue