Parcours
/
C#
C#
/
Exercices
/
Construction d'un arbre
Construction d'un arbre

Construction d'un arbre

Moyen

Instructions

Réécris un algorithme de construction d'arbre.

Certains forums web ont une disposition en arbre, c'est pourquoi les messages y sont présentés sous forme d'arbre. Cependant, les messages sont généralement stockés dans une base de données sous la forme d'un ensemble d'enregistrements non triés. Ainsi, lorsqu'on présente les messages à l'utilisateur, il faut reconstruire la structure en arbre.

Ton travail consistera à réécrire un bout de code qui fonctionne, mais qui est lent et brouillon, et qui implémente la logique de construction d'arbre pour des enregistrements très abstraits. Les enregistrements ne contiennent qu'un identifiant et un identifiant de parent. L'identifiant est toujours compris entre 0 (inclus) et la longueur de la liste d'enregistrements (exclue). Tous les enregistrements ont un identifiant de parent inférieur à leur propre identifiant, sauf l'enregistrement racine, dont l'identifiant de parent est égal à son propre identifiant.

Un exemple d'arbre :

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)
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
C# Exercism

Prêt à commencer Construction d'un arbre ?

Inscris-toi sur Exercism pour apprendre et maîtriser C# avec 62 concepts178 exercices, et un vrai mentorat humain, le tout gratuitement.