- Comparar operaciones frecuentes
- Elegir por acceso y actualización
- Entender stacks, queues y maps
La pregunta correcta
No preguntes cuál estructura es mejor. Preguntá qué operación necesitás hacer más seguido: buscar por posición, buscar por clave, insertar al final o mantener un orden de atención.
- Array: orden y acceso por índice.
- Set: valores únicos.
- Map: acceso por clave.
- Stack: último en entrar, primero en salir.
- Queue: primero en entrar, primero en salir.
Un carrito y un índice
El carrito puede ser un array porque importa el orden. Un índice por id puede ser un Map porque importa encontrar un producto sin recorrer todo.
const productosPorId = new Map(
productos.map((producto) => [producto.id, producto])
);
productosPorId.get('prod-42'); // O(1) promedioToda elección tiene costo
Mantener dos estructuras acelera lecturas pero exige sincronizarlas al escribir. Medí qué operación domina el sistema antes de duplicar índices.
Elegí la estructura
Diseñá el historial de navegación de un navegador y la cola de trabajos de una impresora.
Mostrar una pista
El historial necesita volver al último estado; la impresora respeta el orden de llegada.