Junior — Middle
¿Cómo extraer los elementos del array original que no están presentes en los datos en forma de segmento?
sobes.tech AI
Respuesta de la IA
Чтобы извлечь из исходного массива элементы, которых нет в другом срезе, можно использовать карту (map) для быстрого поиска и фильтрации. Например, если есть исходный массив и срез с элементами, которые нужно исключить, создаём map из элементов среза, затем перебираем исходный массив и добавляем в результат только те элементы, которых нет в map.
Пример на Go:
package main
import "fmt"
func difference(arr []int, exclude []int) []int {
excludeMap := make(map[int]bool)
for _, v := range exclude {
excludeMap[v] = true
}
var result []int
for _, v := range arr {
if !excludeMap[v] {
result = append(result, v)
}
}
return result
}
func main() {
arr := []int{1, 2, 3, 4, 5}
exclude := []int{2, 4}
fmt.Println(difference(arr, exclude)) // Output: [1 3 5]
}
Такой подход эффективен и прост в реализации.