۰
subtitle
ارسال: #۱
سوال ۵۲ کامپیوتر ۸۶ - رابطه بازگشتی تابع
سلام
دوستان سوال ۵۲ کامپیوتر ۸۶ رو چطور باید حل کرد؟
مرسی
دوستان سوال ۵۲ کامپیوتر ۸۶ رو چطور باید حل کرد؟
مرسی

(۱۴ بهمن ۱۳۹۲ ۱۲:۳۳ ب.ظ)mahsalove نوشته شده توسط: سلام
این الگوریتم درخت را به صورت درجا به max-heap تبدیل می کنه که عملیات max-heapify درون حلقه repeat انجام می شود.اگر بخواهیم به طور فلسفی نگاه کنیم که یخورده سخت میشه ولی با توجه به اینکه این سوال تعداد دفعات اجرای حلقه repeat را خواسته یه کار خیلی خیلی ساده انجام بدید به دست می یاد:
خود سوال گفته k=log n خوب شما بیایید برای n پایه مثلا ۲ این کارو انجام بدید و حلقه repeato ببینید چند بار تکرار می شه
!که اگه توجه کنید حداکثر ۲ بار اجرا می شه!
خوب حالا بیایید به جای k ها در جوابها همون چیزی که خود سوال داده بگذارید که log n و اینجا هم n=2 و تعداد تکرار هم ۲ شده!
و اگر چک کنید فقط جواب ۴ که برابر ۴ می شود درست است و از تعداد تکرار ما که ۲ , (t)است بیشتر است.
t<=2*2^log2-1+log2+1=2+1+1=4
ولی اگه برای بقیه بخواهیم حساب کنیم تعداد تکرار می شه منفی که تعداد تکرار هم نمی تونه منفی باشه!و برای همینم ج۴ رو تا همینجا به دست میاریم!و اگر برای پایه ج بده برای بقیشم ج می ده!
موفق باشید.....