زمان کنونی: ۱۲ اردیبهشت ۱۴۰۳, ۰۲:۳۱ ب.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

ارسال:
  

mostafa2012 پرسیده:

کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

سلام
قضیه master : T(n)=aT(n/b)+f(n) =>> g(n)=n^logba
ببخشید در قضیه master میگیم به ازای a>=1 و b>1
پس چرا زمانی که a=1 باشه از این قضیه نمیشه استفاده کرد...؟؟؟؟
مثلا این سوال
T(n)=T(n/3)+T(2n/3)+n ==> به نظر من خب بیاییم دوتا دوتا مثل فرمول master بریم جلو...
اول T(n/3)+n که میشه O(n) چون در اینجا a=1 است و loga در مبنای۳ میشه صفر => میشه n^0=1 در نتیجه f(n) بزرگ تر است
خب بعدش دوباره بیاییم T(2n/3)+f(n) حساب کنیم که این دفعه هم g(n)=1 است پس => اینجا هم f بزرگ تره پس O(n)


ولی در جواب سوال نوشته شده ک از قضیه نمیشه استفاده کرد.و جواب رو از روش درخت حل کرده شده nlogn

لطفا موارد استفاده قضیه master را بگید....
نقل قول این ارسال در یک پاسخ

۱
ارسال:
  

IT93 پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

(۰۲ بهمن ۱۳۹۳ ۱۲:۱۳ ب.ظ)mostafa2012 نوشته شده توسط:  T(n)=T(n/3)+T(2n/3)+n

این میشه nlogn
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

NP-Cσмρℓєтє پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

من خودم هم زیاد به قضایا مسلط نیستم , در حد خودم فقط میتونم بگم:
اول ببینید این قضیه ی مستر رو اگه اشتباه نکنم برای مواردی که بازگشتی ما خطی باشه استفاده میکنیم , الان این رابطه بازگشتی که شما فرمودید خطی نیست و باید براش درخت بازگشت رسم کنیم ,
بعد هم اینو بگم که کلاً این موارد رو باید بر حسب تجربه بدست بیارید,یعنی چندتا حل کنید راحت دستتون میاد که بتونید سریع بگید چطور حلش کنید
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

shayesteb پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

(۰۲ بهمن ۱۳۹۳ ۱۲:۱۳ ب.ظ)mostafa2012 نوشته شده توسط:  سلام
قضیه master : T(n)=aT(n/b)+f(n) =>> g(n)=n^logba
ببخشید در قضیه master میگیم به ازای a>=1 و b>1
پس چرا زمانی که a=1 باشه از این قضیه نمیشه استفاده کرد...؟؟؟؟
مثلا این سوال
T(n)=T(n/3)+T(2n/3)+n

سلام

این قضیه مستر وقتی استفاده میشه که فرم معادله دقیقا مثل همون فرمولی که خودتون نوشتید باشه. بر خلاف اون چیزی که گفتیم a میتونه برابر یک هم باشه مشکلی نداره بازم قضیه جواب میده. اما در مورد مثالی که زدید به این خاطر از قضیه مستر قابل حل نیست چون اولا نگا کنید توی این معادله دو رابطه بازگشتی داریم ولی در قضیه مستر فقط یدونه هستش. پس برای حلش از درخت بازگشتی استفاده میکنیم. از روی صورت سوال هم مشخصه توی هر سطر درخت مجموع سطرها برابر ان هستش.
نقل قول این ارسال در یک پاسخ

ارسال:
  

mostafa2012 پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

(۰۲ بهمن ۱۳۹۳ ۰۴:۴۵ ب.ظ)shayesteb نوشته شده توسط:  
(02 بهمن ۱۳۹۳ ۱۲:۱۳ ب.ظ)mostafa2012 نوشته شده توسط:  سلام
قضیه master : T(n)=aT(n/b)+f(n) =>> g(n)=n^logba
ببخشید در قضیه master میگیم به ازای a>=1 و b>1
پس چرا زمانی که a=1 باشه از این قضیه نمیشه استفاده کرد...؟؟؟؟
مثلا این سوال
T(n)=T(n/3)+T(2n/3)+n

سلام

این قضیه مستر وقتی استفاده میشه که فرم معادله دقیقا مثل همون فرمولی که خودتون نوشتید باشه. بر خلاف اون چیزی که گفتیم a میتونه برابر یک هم باشه مشکلی نداره بازم قضیه جواب میده. اما در مورد مثالی که زدید به این خاطر از قضیه مستر قابل حل نیست چون اولا نگا کنید توی این معادله دو رابطه بازگشتی داریم ولی در قضیه مستر فقط یدونه هستش. پس برای حلش از درخت بازگشتی استفاده میکنیم. از روی صورت سوال هم مشخصه توی هر سطر درخت مجموع سطرها برابر ان هستش.

سلام
ببخشید خب نمیشه دوتا دوتا با هم گرفت=>> اینجوری میشه master ??
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

ارسال:
  

shayesteb پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

(۰۲ بهمن ۱۳۹۳ ۰۵:۲۳ ب.ظ)mostafa2012 نوشته شده توسط:  سلام
ببخشید خب نمیشه دوتا دوتا با هم گرفت=>> اینجوری میشه master ??

تا اونجایی که من اطلاع دارم این روش غلط هست . معادله به هم وابستش نمیشه جداش کنی چطوری میشه این کارا کرد وقتی اینها در کنار همدیگه یک معادله رو تشکیل میدن.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

mostafa2012 پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

باسلام

روش Akra Bazzi راحت ترین و بهترین روش هست!
پیشنهاد میکنم اگر وقت دارید به کتاب ط.الگوریتم مدرسان یا در اینترنت جستجو کنید .... و اگر ن ایشاالله بعد کنکور....(برای المپیاد بخونیدش!)
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

Elena_71 پاسخ داده:

RE: کجا و چ وقتایی میشه از قضیه master برای مرتبه زمانی استفاده کرد؟؟

قضییه مستر شرطش اینه که [tex]a\ge1\: و\: b\ge2[/tex] باشه
نقل قول این ارسال در یک پاسخ



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  چطور میتوان بهتر زندگی کرد؟ شاپری ۲۴ ۱۳,۵۰۹ ۲۲ اسفند ۱۴۰۱ ۰۷:۴۹ ق.ظ
آخرین ارسال: s.gg
Question در آمد مهندسین در ایران. اشتباه کردم پزشکی نخوندم؟ sepanta1990 ۷۴ ۴۷,۸۵۸ ۲۷ فروردین ۱۴۰۱ ۰۷:۳۲ ب.ظ
آخرین ارسال: SetareSokhanrani
Sad میشه اگه میدونین کمک کنین? . مقالههه Negarrr.n ۰ ۱,۰۸۳ ۲۴ بهمن ۱۴۰۰ ۰۸:۳۱ ب.ظ
آخرین ارسال: Negarrr.n
  بلخره پیداش کردم nillshid ۰ ۹۸۸ ۰۶ بهمن ۱۴۰۰ ۱۰:۳۲ ق.ظ
آخرین ارسال: nillshid
Exclamation سلام لطفاً یکی به من بگه مرتبه زمانی ها چطوری به log تبدیل میشن فرمول داره؟؟ Azadam ۶ ۴,۰۱۰ ۰۶ دى ۱۴۰۰ ۰۹:۰۲ ق.ظ
آخرین ارسال: Soldier's life
  استفاده از پشته armiii ۰ ۹۴۹ ۰۳ دى ۱۴۰۰ ۱۲:۴۳ ق.ظ
آخرین ارسال: armiii
  پیدا کردن دستگیره manager_66 ۵ ۴,۴۹۶ ۲۸ آذر ۱۴۰۰ ۱۲:۴۴ ب.ظ
آخرین ارسال: blackhalo1989
  تا به حال شده خدا فرصت زندگی کردن دوباره رو بهت بده؟مرگ از جلوی چشمات رد شده؟ abraham ۲۱ ۱۴,۸۵۰ ۲۰ دى ۱۳۹۹ ۱۰:۵۶ ب.ظ
آخرین ارسال: raam
  جایی برای پیدا کردن توابع آماده جاوااسکریپت f.b ۷ ۴,۰۹۵ ۲۰ آذر ۱۳۹۹ ۰۴:۰۸ ب.ظ
آخرین ارسال: calm
  مرتبه ایجاد درخت rad.bahar ۱ ۳,۰۹۸ ۳۰ مهر ۱۳۹۹ ۰۳:۳۴ ب.ظ
آخرین ارسال: rad.bahar

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close