Skip to content

Commit 2531035

Browse files
committed
Agregar ejercicio de operaciones con conjuntos en JavaScript
1 parent 43fc2f6 commit 2531035

File tree

1 file changed

+89
-0
lines changed

1 file changed

+89
-0
lines changed
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
/*
2+
* EJERCICIO:
3+
* Utilizando tu lenguaje crea un conjunto de datos y realiza las siguientes
4+
* operaciones (debes utilizar una estructura que las soporte):
5+
* - Añade un elemento al final.
6+
* - Añade un elemento al principio.
7+
* - Añade varios elementos en bloque al final.
8+
* - Añade varios elementos en bloque en una posición concreta.
9+
* - Elimina un elemento en una posición concreta.
10+
* - Actualiza el valor de un elemento en una posición concreta.
11+
* - Comprueba si un elemento está en un conjunto.
12+
* - Elimina todo el contenido del conjunto.
13+
*/
14+
15+
/*
16+
La estructura de datos que se va a utilizar es un arreglo, ya que es una estructura que soporta todas las operaciones que se piden en el ejercicio.
17+
*/
18+
19+
let arregloDeNumeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
20+
21+
// Agregar un número al final del arreglo
22+
arregloDeNumeros.push(11);
23+
console.log(arregloDeNumeros);// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
24+
25+
// Agregar un número al principio del arreglo
26+
arregloDeNumeros.unshift(0);
27+
console.log(arregloDeNumeros);// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
28+
29+
// Agregar varios números al final del arreglo
30+
arregloDeNumeros.push(12, 13, 14, 15);
31+
console.log(arregloDeNumeros); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
32+
33+
// Agregar varios números en una posición concreta
34+
arregloDeNumeros.splice(5, 0, 5.1, 5.2, 5.3);
35+
console.log(arregloDeNumeros); // [0, 1, 2, 3, 4, 5, 5.1, 5.2, 5.3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
36+
37+
// Eliminar un elemento en una posición concreta
38+
arregloDeNumeros.splice(5, 1);
39+
console.log(arregloDeNumeros); // [0, 1, 2, 3, 4, 5.1, 5.2, 5.3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
40+
41+
// Actualizar el valor de un elemento en una posición concreta
42+
arregloDeNumeros[5] = 5;
43+
console.log(arregloDeNumeros); // [0, 1, 2, 3, 4, 5, 5.2, 5.3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
44+
45+
// Comprobar si un elemento está en un conjunto
46+
console.log(arregloDeNumeros.includes(5)); // true
47+
48+
// Eliminar todo el contenido del conjunto
49+
//arregloDeNumeros = [];
50+
//console.log(arregloDeNumeros); // []
51+
52+
53+
54+
const array1 = [1, 2, 3, 6];
55+
const array2 = [1, 2, 3, 4, 5];
56+
57+
// Operaciones de conjuntos con arreglos en JavaScript usando Set y Arreglos directamente
58+
// Set es una estructura de datos que no permite elementos duplicados
59+
const unionArraySet = new Set([...array1, ...array2]);
60+
console.log("Union de conjuntos con SET: ",unionArraySet); // [1, 2, 3, 1, 2, 3, 4, 5]
61+
62+
// Arreglos directamente
63+
const unionArray = (array1, array2) => {
64+
return [...new Set([...array1, ...array2])];
65+
}
66+
console.log("Union de arreglos",unionArray(array1, array2)); // [1, 2, 3, 4, 5, 6]
67+
68+
69+
// Intersección de conjuntos
70+
// Set es una estructura de datos que no permite elementos duplicados
71+
const conjuntoA = new Set(array1);
72+
const conjuntoB = new Set(array2);
73+
74+
const intersectionArraySet =conjuntoA.filter(x => conjuntoB.has(x));
75+
console.log("Intersecion de conjuntos con SET",intersectionArraySet); // [1, 2, 3]
76+
// Intersección de arreglos directamente
77+
78+
79+
const intersectionArray = (array1, array2) => {
80+
return array1.filter(value => array2.includes(value));
81+
}
82+
console.log("Intersecion de arreglos",intersectionArray(array1, array2)); // [1, 2, 3]
83+
84+
85+
86+
87+
const differenceArraySet = new Set(array1.filter(x => !array2.includes(x)));
88+
console.log(differenceArraySet); // [6]
89+

0 commit comments

Comments
 (0)