مسیرها
/
C#
C#
/
تمرین‌ها
/
ساخت درخت
ساخت درخت

ساخت درخت

متوسط

دستورالعمل‌ها

یک الگوریتم ساخت درخت را بازآرایی کنید.

برخی انجمن‌های وب چیدمان درختی دارند، بنابراین پست‌ها به شکل یک درخت نمایش داده می‌شوند. اما پست‌ها معمولاً در یک پایگاه داده به‌صورت مجموعه‌ای مرتب‌نشده از رکوردها ذخیره می‌شوند. بنابراین هنگام نمایش پست‌ها به کاربر، ساختار درخت باید از نو ساخته شود.

کار شما این است که تکه‌کدی را بازآرایی کنید که کار می‌کند اما کند و زشت است و منطق ساخت درخت را برای رکوردهای به‌شدت انتزاعی پیاده‌سازی می‌کند. رکوردها فقط شامل یک شناسه و یک شناسه‌ی والد هستند. شناسه همیشه بین ۰ (شامل) و طول فهرست رکوردها (غیرشامل) است. شناسه‌ی والد همه‌ی رکوردها از شناسه‌ی خودشان کمتر است، به‌جز رکورد ریشه که شناسه‌ی والدش با شناسه‌ی خودش برابر است.

یک نمونه درخت:

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 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.