Skip to content

Commit 402ba78

Browse files
authored
Merge pull request #98 from marcode24/2024-18-ts
2024 18 ts
2 parents ff1d3a8 + 203f656 commit 402ba78

File tree

2 files changed

+63
-1
lines changed

2 files changed

+63
-1
lines changed

2024/18-conjuntos/solution.ts

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
/* eslint-disable no-console */
2+
3+
let dataSet: (number | string)[] = [1, 2, 3, 4, 5];
4+
5+
// Añadir un elemento al final
6+
dataSet.push(6);
7+
console.log("Añadir un elemento al final:", dataSet);
8+
9+
// Añadir un elemento al principio
10+
dataSet.unshift(0);
11+
console.log("Añadir un elemento al principio:", dataSet);
12+
13+
// Añadir varios elementos en bloque al final
14+
dataSet.push(7, 8, 9);
15+
console.log("Añadir varios elementos al final:", dataSet);
16+
17+
// Añadir varios elementos en bloque en una posición concreta
18+
dataSet.splice(3, 0, "a", "b", "c");
19+
console.log("Añadir varios elementos en una posición concreta:", dataSet);
20+
21+
// Eliminar un elemento en una posición concreta
22+
dataSet.splice(4, 1); // Elimina el elemento en la posición 4
23+
console.log("Eliminar un elemento en una posición concreta:", dataSet);
24+
25+
// Actualizar el valor de un elemento en una posición concreta
26+
dataSet[4] = "updated";
27+
console.log(
28+
"Actualizar el valor de un elemento en una posición concreta:",
29+
dataSet
30+
);
31+
32+
// Comprobar si un elemento está en el conjunto
33+
const exists: boolean = dataSet.includes("updated");
34+
console.log("Comprobar si un elemento está en el conjunto:", exists);
35+
36+
// Eliminar todo el contenido del conjunto
37+
dataSet = [];
38+
console.log("Eliminar todo el contenido del conjunto:", dataSet);
39+
40+
// Ejemplos con conjuntos (Sets)
41+
const setA: Set<number> = new Set([1, 2, 3, 4]);
42+
const setB: Set<number> = new Set([3, 4, 5, 6]);
43+
44+
// Unión
45+
const union: Set<number> = new Set([...setA, ...setB]);
46+
console.log("Unión:", union);
47+
48+
// Intersección
49+
const intersection: Set<number> = new Set([...setA].filter((x) => setB.has(x)));
50+
console.log("Intersección:", intersection);
51+
52+
// Diferencia
53+
const difference: Set<number> = new Set([...setA].filter((x) => !setB.has(x)));
54+
console.log("Diferencia:", difference);
55+
56+
// Diferencia simétrica
57+
const symmetricDifference: Set<number> = new Set(
58+
[...setA]
59+
.filter((x) => !setB.has(x))
60+
.concat([...setB].filter((x) => !setA.has(x)))
61+
);
62+
console.log("Diferencia simétrica:", symmetricDifference);

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ npm run test 'year'/'folder-name'/solution.test.js
6767
| 15 | [Asincronía](https://retosdeprogramacion.com/roadmap/) | 🔴 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/15-asincronia/index.js) |
6868
| 16 | [Expresiones Regulares](https://retosdeprogramacion.com/roadmap/) | 🟡 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/16-expresiones-regulares/index.js) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/16-expresiones-regulares/solution.ts) |
6969
| 17 | [Iteraciones](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/17-iteraciones/index.js) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/17-iteraciones/solution.ts) |
70-
| 18 | [Conjuntos](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/18-conjuntos/index.js) |
70+
| 18 | [Conjuntos](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/18-conjuntos/index.js) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/17-iteraciones/solution.ts) |
7171
| 19 | [Enumeraciones](https://retosdeprogramacion.com/roadmap/) | 🟡 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/19-enumeraciones/index.js) |
7272
| 20 | [Peticiones HTTP](https://retosdeprogramacion.com/roadmap/) | 🔴 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/20-peticiones-http/index.js) |
7373
| 21 | [Callbacks](https://retosdeprogramacion.com/roadmap/) | 🟡 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/21-callbacks/index.js) |

0 commit comments

Comments
 (0)