Riorganizza un algoritmo di costruzione dell'albero.
Alcuni forum web hanno una struttura ad albero, quindi i post vengono presentati come un albero. Tuttavia, i post sono tipicamente memorizzati in un database come un insieme non ordinato di record. Quindi, quando si presentano i post all'utente, la struttura ad albero deve essere ricostruita.
Il tuo compito sarà riorganizzare un pezzo di codice funzionante ma lento e brutto che implementa la logica di costruzione dell'albero per record altamente astratti. I record contengono solo un numero ID e un numero ID del genitore. Il numero ID è sempre compreso tra 0 (incluso) e la lunghezza della lista di record (esclusa). Tutti i record hanno un ID del genitore inferiore al proprio ID, tranne il record radice, che ha un ID del genitore uguale al proprio ID.
Un esempio di albero:
root (ID: 0, parent ID: 0)
|-- child1 (ID: 1, parent ID: 0)
| |-- grandchild1 (ID: 2, parent ID: 1)
| +-- grandchild2 (ID: 4, parent ID: 1)
+-- child2 (ID: 3, parent ID: 0)
| +-- grandchild3 (ID: 6, parent ID: 3)
+-- child3 (ID: 5, parent ID: 0)
Iscriviti a Exercism per imparare e padroneggiare Visual Basic con 113 esercizi e il mentoring di persone reali, tutto gratis.