Unión e intersección de arreglos
Crea una función que reciba dos arreglos y devuelva un arreglo de intersección y un arreglo de unión.
- Arreglo de intersección: elementos compartidos por ambos.
- Arreglo de unión: elementos que existen en el primer o en el segundo arreglo, o en ambos (no una OR exclusiva).
Aunque los arreglos de entrada pueden contener números duplicados, los arreglos de intersección y unión devueltos deben estar convertidos en conjuntos; es decir, no deben contener duplicados. Los arreglos devueltos deben estar ordenados de forma ascendente.
Array 1: [5, 6, 6, 6, 8, 9]
Array 2: [3, 3, 4, 4, 5, 5, 8]
Intersection: [5, 8]
# 5 y 8 son los únicos 2 números que existen en ambos arreglos.
Union: [3, 4, 5, 6, 8, 9]
# Cada número existe al menos en uno de los arreglos.Ejemplos
intersection_union([1, 2, 3, 4, 4], [4, 5, 9]) ➞ [[4], [1, 2, 3, 4, 5, 9]]
intersection_union([1, 2, 3], [4, 5, 6]) ➞ [[], [1, 2, 3, 4, 5, 6]]
intersection_union([1, 1], [1, 1, 1, 1]) ➞ [[1], [1]]Notas
- El orden de salida debe ser:
[Intersection], [Union]. - Recuerda que ambos arreglos de salida deben estar en orden ascendente.
- Cada arreglo de entrada tendrá al menos un elemento.
- Si ambos arreglos son disjuntos (no comparten ningún elemento), devuelve un arreglo vacío
[]para la intersección.