Bonjour !
J'essaie de monter un projet, et j'ai un algorithme qui me donne bien du fil à retordre. Je monte un programme où une hiérarchie de personnes sont en dessous du client actuel. Il n'y a que deux branches possibles : la droite et la gauche. Mon problème est que je veux recenser tous les clients qui se situent dans la branche gauche du client actuel (algorithme personnalisé pour chaque client). Par contre, je veux savoir tous les clients qui se situent dans les branches gauches et droites des clients en dessous. J'avais pensé à un for each puisque j'utiliserai des objets pour définir chaque client. Le problème, c'est que je ne trouve pas l'algorithme nécessaire. Il sera probablement nécessaire d'imbriquer quelques boucles l'une dans l'autre. Il faut aussi comprendre que le nombre de niveau en dessous du client actuel est infini, sans limite.
Par exemple :
Dans cet exemple, client 1 est dans la branche gauche du client actuel, comme l'est aussi client 2, 3, 4 et 5. Dans la branche droite, il y a client 6, 8, 7, 11, 10 et 9. Si quelqu'un pourrait m'aider avec cet algorithme, ce serait très apprécié et me donnerait un sérieux coup de pouce dans mon apprentissage du C#.
Merci beaucoup en avance,
gretro
Partager