درختهای هندسی (ادامه)
جمعه, ۱۳ دی ۱۳۹۲، ۰۹:۱۸ ق.ظ
تفاوت range tree و interval tree در این است که در range tree ما یک سری نقطه داریم و می خواهیم نقاط درون این بازه را به دست بیاوریم، اما در interval tree در درخت بازه ها را نگه می داریم و می خواهیم بازه های شامل نقطه ی داده شده را پیدا کنیم. در پیاده سازی کاری که می کنیم این است که در interval tree یک درخت روی نقاط سر بازه ها می سازیم، اما در range tree روی نقاط درخت می سازیم.
سوال دیگری که مانده بود این بود که ارتباط segment tree و range tree چیست. (دو بعدی)
در segment tree ما از ریشه که به سمت برگها می رویم، در طول مسیر بازه ها را گزارش می کنیم (شکل سمت راست) اما در range tree ما جایی که دو مسیر جدا می شوند زیر درخت های راست سمت چپی و چپ سمت راستی را گزارش می کنیم. (از این نظر فرقی بین range tree و interval tree نیست)
۹۲/۱۰/۱۳