¿Qué es un HashSet?
Parte de la sección Lógica y Flujo del Journey de C# de Coddy. Lección 56 de 66.
Un HashSet es una colección en C# que almacena elementos únicos sin un orden particular. Forma parte del espacio de nombres System.Collections.Generic y proporciona operaciones de conjunto de alto rendimiento.
Primero, incluya el espacio de nombres requerido:
using System.Collections.Generic;Crea un HashSet vacío:
HashSet<string> fruits = new HashSet<string>();Esto crea un HashSet que puede almacenar valores de cadena.
A diferencia de los arrays o listas, los HashSets:
- No permiten elementos duplicados
- No mantienen el orden de inserción
- Proporcionan operaciones de búsqueda rápidas (complejidad O(1))
- Son ideales cuando necesitas garantizar la unicidad
Si intentas agregar un elemento duplicado, HashSet lo ignorará:
fruits.Add("Apple");
fruits.Add("Apple"); // Esto se ignoraDespués de ejecutar el código anterior, el conjunto todavía contiene solo un «Apple».
Pruébalo tú mismo
Esta lección no incluye un desafío de código.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Arrays multidimensionales
Conceptos básicos de arrays 2DDeclaración e inicialización de arrays 2DAcceso a elementos de arrays 2DBucles anidados con arrays 2DArrays irregularesOperaciones comunes con matricesRepaso: arrays multidimensionales4Técnicas de control de flujo
Retornos anticipadosCláusulas de guardaSentencias de salto (goto)Break y ContinueAplanar condicionales anidados7Operadores lógicos avanzados
Evaluación de cortocircuitoOperadores lógicos condicionalesPrecedencia de operadoresRepaso: operadores avanzados2Toma de decisiones avanzada
Múltiples condicionesLógica booleana complejaComparación entre If y SwitchSentencias Switch anidadasRepaso: decisiones avanzadas5Manejo de excepciones
Fundamentos de Try-CatchTipos de excepcionesMúltiples bloques CatchTrabajo con archivosBloque FinallyUso de Using frente a Try-FinallyExcepciones personalizadasRepaso: manejo de errores8Sistema de análisis de datos
Configuración de recopilación de datosLógica de entrada de datos11HashSet Parte 1
¿Qué es un HashSet?Agregar un elementoEliminar un elementoComprobar si existe un elementoVacío y tamañoRepaso - HashSet3Mejoras de bucles
Rendimiento de buclesIteración de estructuras complejasCada tipo de bucleRefactorización de buclesRepaso: bucles optimizados6Manejo de valores nulos
Conceptos básicos de referencias nulasTipos de valor anulablesPatrones de comprobación de valores nulosProgramación defensivaRepaso: seguridad frente a valores nulosPractica por tu cuenta: Compilador de C# online