با استفاده از کتابخانه
ابزاری عالی برای نمایش دادههای سلسلهمراتبی به شکلی تمیز و خوانا. 🖥✨
ماژول Rich خروجی ترمینال را زیبا و خوانا میکند. همچنین ابزاری ایدهآل برای نمایش ساختار فایلها، پروژهها یا هر داده سلسلهمراتبی.
#rich | #tree | #console | learnpythonicy
Rich، این کد یک نمای درختی زیبا از فولدرها و زیرفولدرها ایجاد میکند. ابزاری عالی برای نمایش دادههای سلسلهمراتبی به شکلی تمیز و خوانا. 🖥✨
ماژول Rich خروجی ترمینال را زیبا و خوانا میکند. همچنین ابزاری ایدهآل برای نمایش ساختار فایلها، پروژهها یا هر داده سلسلهمراتبی.
#rich | #tree | #console | learnpythonicy
✔️ ساختار داده درخت به زبان ساده
درخت چیست؟
یک ساختار داده سلسله مراتبی شبیه درخت واقعی است که از:
- گرهها (Nodes): خانههای حاوی داده
- یالها (Edges): خطوط اتصال بین گرهها
چرا درخت مهمه؟
- نمایش دادههای سلسله مراتبی مثل:
- ساختار فایلها در کامپیوتر 📂
- نمودار سازمانی شرکت 👨💼
- رابطه والد-فرزند در دیتابیس 🗄
- پایهی الگوریتمهای پیشرفته
- سرعت بالا در جستجو و مرتبسازی
انواع اصلی درخت
1️⃣ درخت دودویی (Binary Tree)
- هر گره حداکثر ۲ فرزند: چپ و راست
2️⃣ درخت جستجوی دودویی (BST)
- مقدار فرزند چپ < والد < فرزند راست
- جستجو مثل بازی "حدس عدد":
3️⃣ درخت AVL
- نسخهی متعادلشدهی BST
- خودش رو با چرخشها متعادل میکنه ⚖️
مثال کاربردی: سیستم فایل
چه زمانی از درخت استفاده کنیم؟
- وقتی دادهها رابطهی سلسله مراتبی دارن
- نیاز به جستجوی سریع دارید (مثل دیکشنری)
- میخواین دادهها رو به صورت مرتبشده نگه دارید
> "درختها پل بین ساختارهای خطی ساده و پایگاهدادههای پیشرفته هستند!"
#tree | @LearnPythonIcy
درخت چیست؟
یک ساختار داده سلسله مراتبی شبیه درخت واقعی است که از:
- گرهها (Nodes): خانههای حاوی داده
- یالها (Edges): خطوط اتصال بین گرهها
چرا درخت مهمه؟
- نمایش دادههای سلسله مراتبی مثل:
- ساختار فایلها در کامپیوتر 📂
- نمودار سازمانی شرکت 👨💼
- رابطه والد-فرزند در دیتابیس 🗄
- پایهی الگوریتمهای پیشرفته
- سرعت بالا در جستجو و مرتبسازی
انواع اصلی درخت
1️⃣ درخت دودویی (Binary Tree)
- هر گره حداکثر ۲ فرزند: چپ و راست
class Node:
def __init__(self, data):
self.left = None
self.right = None
self.data = data
2️⃣ درخت جستجوی دودویی (BST)
- مقدار فرزند چپ < والد < فرزند راست
- جستجو مثل بازی "حدس عدد":
def search(root, target):
if not root: return False
if root.data == target: return True
if target < root.data:
return search(root.left, target)
return search(root.right, target)
3️⃣ درخت AVL
- نسخهی متعادلشدهی BST
- خودش رو با چرخشها متعادل میکنه ⚖️
مثال کاربردی: سیستم فایل
📁 Documents/
├── 📁 Projects/
│ ├── 📄 report.pdf
│ └── 📁 Code/
├── 📁 Images/
│ └── 🖼 photo1.jpg
└── 📄 notes.txt
چه زمانی از درخت استفاده کنیم؟
- وقتی دادهها رابطهی سلسله مراتبی دارن
- نیاز به جستجوی سریع دارید (مثل دیکشنری)
- میخواین دادهها رو به صورت مرتبشده نگه دارید
> "درختها پل بین ساختارهای خطی ساده و پایگاهدادههای پیشرفته هستند!"
#tree | @LearnPythonIcy
👍1