Sobes.tech
Middle+

Функция жаз, ал in-place түрүндө val менен барабар бардык элементтерди алып салат. Жогорулаган маанилерсиз кесимди кайтарат. func RemoveValue(slice []int, val int) []int { // кодуңуз } // Мисал 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

AIден жооп

Функция, ки ҳамаи элементҳоро, ки баробар ба val ҳастанд, аз слайс хориҷ мекунад, онро дар ҷой тағир медиҳад ва слайси навро бо ин элементҳо намебарорад. Барои ин, метавон ду индекс истифода бурд: яке барои хондан, дигар барои навиштан.

func RemoveValue(slice []int, val int) []int {
    j := 0
    for _, v := range slice {
        if v != val {
            slice[j] = v
            j++
        }
    }
    return slice[:j]
}

Масалан:

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))          // []