تالار گفتمان مانشت

نسخه‌ی کامل: سوال ۴۸ آزاد فناوری اطلاعات سال ۸۵
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوستان می شه خواهش کنم گزینه ای که به نظرتون درست هست رو با دلیل برای من بگید؟Undecided
فکر کنم اون [tex]\binom{n}{2}[/tex] نیست بلکه [tex]n/2[/tex] است و اشتباه تایپی بوده چون در غیراینصورت اصلا n=1 نمیشه و هر بار به جای اینکه کم بشه زیاد میشه.

n توانی از 2 است و باید اونقدر بر 2 تقسیم بشه تا به 1 برسه پس logn بار باید تابع اجرا بشه و گزینه 1 درسته.

مثلا n=8

[tex]f(8)\rightarrow f(4)\rightarrow f(2)\rightarrow f(1)\rightarrow return1[/tex]

که چهار بار اجرا شد یعنی [tex]log8 1[/tex]
بله منم میخاستم بگم صورت سوال اشتباهه
گزینه 2 جواب است تو کتاب مقسمی نوشت
(t(n/2)+t(n/2) =o(n) or o(2^lgn
(13 اردیبهشت 1390 02:51 ب.ظ)benaifur نوشته شده توسط: [ -> ]گزینه 2 جواب است تو کتاب مقسمی نوشت
(t(n/2)+t(n/2) =o(n) or o(2^lgn
نه اگر [tex]f(n/2) f(n/2)[/tex]

رو داشتیم حرف شما درست بود چون تابع درختی میشد شبیه فیبوناچی
اما حالا [tex]f(n/2) n/2[/tex]
داریم که میشه.
[tex]T(n)=T(n/2)[/tex]
[tex]O(logn)[/tex]
خیلی واضحه که جواب logn می شه در واقع زمان اجرا برابر است با
T(n)=T(n/2)+1 = o(logn)
(14 اردیبهشت 1390 07:34 ب.ظ)khodam نوشته شده توسط: [ -> ]خیلی واضحه که جواب logn می شه در واقع زمان اجرا برابر است با
T(n)=T(n/2)+1 = o(logn)

مشکل من هم با سوالهای دانشگاه آزاد وضوح و سادگی نیست ... تا حالا این همه سوال غلط از نظر مفهومی از نظر شکلی از نظر تایپی یکجا ندیده بودمTongue
لینک مرجع