Protocolo 23: El árbol del saber

Difícil
árboles
estructuras-de-datos
jerarquías

📖Historia

🌳 El árbol del saber

Zona: Bosque de Datos
Dificultad: Hard

En el Bosque de Datos, cada nodo tiene un padre. Los fragmentos están conectados jerárquicamente, pero están desordenados.

"Cada rama nace de un tronco. Cada hijo, de un padre."

Tu misión es reconstruir la jerarquía completa desde los fragmentos dispersos.

🎯Enunciado

Construye un árbol jerárquico desde un array plano de nodos.

Cada nodo tiene:

  • id: identificador único
  • parentId: id del padre (null si es raíz)
  • value: valor del nodo

Devuelve un objeto donde cada clave es un id y su valor es un objeto con:

  • value: el valor del nodo
  • children: array de id de sus hijos

Ejemplo:

buildTree([
  { id: 1, parentId: null, value: 'Root' },
  { id: 2, parentId: 1, value: 'Child1' },
  { id: 3, parentId: 1, value: 'Child2' }
])
// Devuelve:
{
  1: { value: 'Root', children: [2, 3] },
  2: { value: 'Child1', children: [] },
  3: { value: 'Child2', children: [] }
}

Casos de prueba

Tu solución será validada contra 4 casos de prueba

Test 1: Árbol simple
Test 2: Múltiples hijos
Test 3: Solo raíz

... y 1 casos más

💻 Editor de código

JavaScript
Cargando editor...
Loading...