Middle
Is een slice monotoon? Een monotone functie is een functie van één variabele, gedefinieerd op een deelverzameling van de reële getallen, die of overal (op haar domein) niet afneemt, of overal niet toeneemt. {1,7} - waar {1,1} - waar {3,3,1} - waar {9,5,1} - waar {23,5,23} - onwaar
sobes.tech AI
Antwoord van AI
Om te bepalen of een lijst monotoon is, moet je controleren of deze niet-afnemend (elke volgende niet kleiner is dan de vorige) of niet-toenemend (elke volgende niet groter is dan de vorige) is.
Voorbeeld van een functie in Go die de monotoniciteit van een lijst van gehele getallen controleert:
func isMonotonic(nums []int) bool {
if len(nums) <= 1 {
return true
}
increasing := true
decreasing := true
for i := 1; i < len(nums); i++ {
if nums[i] > nums[i-1] {
decreasing = false
}
if nums[i] < nums[i-1] {
increasing = false
}
}
return increasing || decreasing
}
Voorbeeld van gebruik:
fmt.Println(isMonotonic([]int{1,7})) // true
fmt.Println(isMonotonic([]int{1,1})) // true
fmt.Println(isMonotonic([]int{3,3,1})) // true
fmt.Println(isMonotonic([]int{9,5,1})) // true
fmt.Println(isMonotonic([]int{23,5,23})) // false