ارتفاع هیپ درجه d با n گره از چه مرتبه ای است؟ - نسخهی قابل چاپ |
ارتفاع هیپ درجه d با n گره از چه مرتبه ای است؟ - sos006 - 30 دى ۱۳۸۹ ۱۱:۵۰ ق.ظ
با سلام. عزیزان ارتفاع یک هیپ درجه d و یا هر درخت کاملی با این درجه و تعداد گره های n از چه مرتبه ای میشه؟ |
RE: ارتفاع هیپ درجه d با n گره؟ - حامد - ۳۰ دى ۱۳۸۹ ۰۲:۳۳ ب.ظ
تله گذاشتی؟! ارتفاعش که میشه: [tex]\left \lceil \log_{d}(d-1) \log_{d}n -1 \right \rceil[/tex] {فکر نکنی اینو بلد بودم! از توی اینترنت پیداش کردم.} ولی شما مرتبهی پیدا کردن ارتفاع رو خواستی،که از دید من میشه [tex]O(1)[/tex] چونکه n را توی صورت سوال داریم.ولی اگر n را نداشتیم مرتبه میشد[tex]O(\log_{d}n)[/tex] (اگر d رو کمتر از n در نظر بگیریم.) |
RE: ارتفاع هیپ درجه d با n گره؟ - sos006 - 30 دى ۱۳۸۹ ۰۹:۱۴ ب.ظ
اگه ارتفاع رو بخوایم بدونیم ،واسه یه درخت کامل درجه d با n گره ارتفاع رو همیشه نمیشه گرفت [tex]( log_{d}(n))[/tex].آخه من واسه d=3 حساب کردم .اگه ۴ تا عنصر داشته باشیم ارتفاع با فرمول بالا میشه۲ در حالیکه باید ۱ بدست بیاد. |
RE: ارتفاع هیپ درجه d با n گره؟ - ف.ش - ۳۰ دى ۱۳۸۹ ۰۹:۳۵ ب.ظ
باید دقت کنید که در آخرین سطح یک درخت کامل تعداد گرهها میتونه بین ۱ تا [tex]d^{h}[/tex] باشه . پس نمیتونید فرمول خاصی برای اون بگید.مگر اینکه تعداد n رو داشته باشید سعی کنید فرمول حفظ نکنید با تحلیل درخت ارتفاع رو محاسبه کنید. |
RE: ارتفاع هیپ درجه d با n گره؟ - ف.ش - ۰۱ بهمن ۱۳۸۹ ۱۲:۲۲ ق.ظ
بله من یه لحظه با درخت پر اشتباه کردم بعدش که گفتم باید خودتون تحلیل کنید و فرمول قبل حداکثر n رو به ما میداد . حداقلش هم میشه [tex]d^{h}-1/d-1 1 =d^{h} d-2/d-1[/tex] برای اون مثال که d=3 و n=4 بود چون درخت پره. از فرمول اول میریم یعنی [tex]d^{h 1}-1/d-1 [/tex] [tex]4=3^{h 1}-1/3-1 [/tex] یعنی h+1 میشه ۲ و h=1 بدست میاد. البته گفتم این دو فرمول برای وقتی هست که یا حداقل گره رو داشته باشیم یا حداکثر و در هر صورت ارتفاع h هست. |