Middle+
Uzrakstiet funkciju, kas vietā izņem visus elementus, kas ir vienādi ar val, no slice. Atgriež slice bez izņemtajām vērtībām. func RemoveValue(slice []int, val int) []int { // jūsu kods } // Piemērs RemoveValue([]int{1,2,3,2,4}, 2) // -> []int{1,3,4} RemoveValue([]int{1,2,3}, 5) // -> []int{1,2,3} RemoveValue([]int{}, 1) // -> []int{}
sobes.tech AI
Atbilde no AI
Funkcija izņem visus elementus, kas ir vienādi ar val, no saraksta, to vietā mainot, un atgriež jaunu sarakstu bez šiem elementiem. Tam var izmantot divus indeksus: vienu lasīšanai, otru rakstīšanai.
func RemoveValue(slice []int, val int) []int {
j := 0
for _, v := range slice {
if v != val {
slice[j] = v
j++
}
}
return slice[:j]
}
Piemērs:
fmt.Println(RemoveValue([]int{1,2,3,2,4}, 2)) // [1 3 4]
fmt.Println(RemoveValue([]int{1,2,3}, 5)) // [1 2 3]
fmt.Println(RemoveValue([]int{}, 1)) // []