آموزش ساختمان داده درخت بازه ها Segment Tree و پیاده سازی آن در سی پلاس پلاس C
145 بار بازدید -
2 سال پیش
-
آموزش ساختمان داده درخت بازه
آموزش ساختمان داده درخت بازه ها Segment Tree و پیاده سازی آن در سی پلاس پلاس C++ - (برای مشاهده نسخه کامل آموزش به لینک زیر مراجعه کنید)
https://fdrs.ir/h2g3
بسیاری از الگوریتمهای پیشرفته امروزی از دادههای بسیاری استفاده میکنند و برای استفاده بهینه از این حجم از دادهها، نیاز به یک ساختمانداده پیشرفته است. ساختمانداده Segment Tree، بسیار قدرتمند و سریع است و میتواند برای بسیاری از مسائل به خصوص مسائل ریاضی و سبک ACM (Association for Computing Machinery)، استفاده شود.
در این فرادرس به چند انشعاب این ساختمانداده میپردازیم و خواهیم دید که در بعضی مسائل، سرعت تغییر و برداشت اطلاعات را نسبت به ساختمانداده بدیهی، چندینهزار برابر میکند. پس از آموزش تئوری این ساختمانداده، با زبان C++ (سیپلاسپلاس) این ساختمانداده را پیادهسازی میکنیم. این ساختمانداده بسیار هوشمندانه عمل میکند و حتی دانستن ایده کلی آن نیز یک دید جدیدی نسبت به آرایهها و ساختمانداده به ما میدهد.
معمولا Segment Tree یک ساختمانداده بسیار پیشرفته است که در مقطع کارشناسی و حتی مقاطع بالاتر در دانشگاهها تدریس نمیشود، بنابراین توضیح صحیح و درست این ساختمانداده که موجب درک عمیق مخاطبین شود، حساسیت بسیار بالایی دارد. این ساختمانداده را به دلیل قدرت و سرعت بالا در بسیاری از پروژهها میتوان استفاده کرد. تقریبا هرجایی که ساختمانداده پایه آن آرایه است، Segment Tree میتواند پیادهسازی شود. در بعضی از مسائل تنها راه بهینه، استفاده از Segment Tree است و احتمالا جایگزینی برای این ساختمانداده وجود ندارد.
زمانبندی ویدئو:
0:00:00 درس یکم: مفاهیم ساختمانداده
0:06:44 درس دوم: ساختار کلی Segment Tree
0:14:51 درس سوم: ساده شده الگوریتم Segment Tree
2 سال پیش
در تاریخ 1401/09/29 منتشر شده
است.
145
بـار بازدید شده