Διαδρομές
/
C#
C#
/
Ασκήσεις
/
Κατασκευή δέντρου
Κατασκευή δέντρου

Κατασκευή δέντρου

Μέτριο

Οδηγίες

Αναδιαμόρφωσε έναν αλγόριθμο δημιουργίας δέντρου.

Ορισμένα διαδικτυακά φόρουμ έχουν διάταξη δέντρου, οπότε οι δημοσιεύσεις παρουσιάζονται ως δέντρο. Ωστόσο, οι δημοσιεύσεις συνήθως αποθηκεύονται σε μια βάση δεδομένων ως ένα μη ταξινομημένο σύνολο καταγραφών. Έτσι, όταν παρουσιάζονται οι δημοσιεύσεις στον χρήστη, η δομή του δέντρου πρέπει να ανακατασκευαστεί.

Η δουλειά σου θα είναι να αναδιαμορφώσεις έναν κώδικα που λειτουργεί αλλά είναι αργός και άσχημος, ο οποίος υλοποιεί τη λογική δημιουργίας δέντρου για ιδιαίτερα αφηρημένες καταγραφές. Οι καταγραφές περιέχουν μόνο έναν αριθμό ID και έναν αριθμό ID γονέα. Ο αριθμός ID είναι πάντα μεταξύ 0 (συμπεριλαμβανομένου) και του μήκους της λίστας καταγραφών (μη συμπεριλαμβανομένου). Όλες οι καταγραφές έχουν ID γονέα μικρότερο από το δικό τους ID, εκτός από την καταγραφή ρίζα, της οποίας το ID γονέα είναι ίσο με το δικό της ID.

Ένα παράδειγμα δέντρου:

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)
Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
C# Exercism

Έτοιμος να ξεκινήσεις την άσκηση Κατασκευή δέντρου;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις C# με 62 έννοιες178 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.