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

shayesteb پرسیده:

حل رابطه بازگشتی

سلام دوستان

میشه روش حل این سوال را توضیح بدید

T(n)=1nn1i=1T(i)3nT(1)=1

( منبع: سوال ۱۳ فصل اول کتاب ۶۰۰ تست Smile )
نقل قول این ارسال در یک پاسخ

۲
ارسال:
  

reza777gh پاسخ داده:

RE: حل رابطه بازگشتی

سلام
به نظر من اینطور حل میشه:

T(n)=1n[T(1)T(2)...T(n3)T(n2)T(n1)(3n)]

حالا T(n1) رو هم بست میدم:

T(n1)=1n1[T(1)T(2)...T(n3)T(n2)(3(n1))]

حالا باز شده ی T(n1) رو درT(n) جایگزین میکنم:

T(n)=1n[T(1)T(2)...T(n2)1n1[T(1)...T(n2)3(n1)]3n]
و یک +۳ و -۳ به داخل [ ] اضافه می کنم:

T(n)=1n[T(1)T(2)...T(n2)1n1[T(1)...T(n2)3(n1)]3n33]

حالاداریم
3n33=(3n3)3=3(n1)3
یه ذره جابجایی برای فهم بهتر...

T(n)=1n[1n1[T(1)...T(n2)3(n1)][T(1)T(2)...T(n2)3(n1)]3]

حالا میبینیم که همه چیز دوبار تکرار شده ودر واقع دوبار T(n1) بسط داده شده و فقط مشکل ما نبودن کسر 1n1 در ابتدای عبارت دوم هست که با یک ضریب n-1 درست میشه البته اون +۳ رو هم فراموش نمی کنم!

یعنی اینجوری!

T(n)=1n[T(n1)(n1)T(n1)3]=1n[nT(n1)3]=T(n1)3n

که اگه اشتباه نکنم میشه:
T(n)=T(n1)3n=ln(n)

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

ارسال:
  

Riemann پاسخ داده:

RE: حل رابطه بازگشتی

(۰۱ شهریور ۱۳۹۳ ۱۲:۴۶ ق.ظ)reza777gh نوشته شده توسط:  سلام
به نظر من اینطور حل میشه:

T(n)=1n[T(1)T(2)...T(n3)T(n2)T(n1)(3n)]

حالا T(n1) رو هم بست میدم:

T(n1)=1n1[T(1)T(2)...T(n3)T(n2)(3(n1))]

حالا باز شده ی T(n1) رو درT(n) جایگزین میکنم:

T(n)=1n[T(1)T(2)...T(n2)1n1[T(1)...T(n2)3(n1)]3n]
و یک +۳ و -۳ به داخل [ ] اضافه می کنم:

T(n)=1n[T(1)T(2)...T(n2)1n1[T(1)...T(n2)3(n1)]3n33]

حالاداریم
3n33=(3n3)3=3(n1)3
یه ذره جابجایی برای فهم بهتر...

T(n)=1n[1n1[T(1)...T(n2)3(n1)][T(1)T(2)...T(n2)3(n1)]3]

حالا میبینیم که همه چیز دوبار تکرار شده ودر واقع دوبار T(n1) بسط داده شده و فقط مشکل ما نبودن کسر 1n1 در ابتدای عبارت دوم هست که با یک ضریب n-1 درست میشه البته اون +۳ رو هم فراموش نمی کنم!

یعنی اینجوری!

T(n)=1n[T(n1)(n1)T(n1)3]=1n[nT(n1)3]=T(n1)3n

که اگه اشتباه نکنم میشه:
T(n)=T(n1)3n=ln(n)

امیدوارم که مفید باشه
روش درست همینه!!
البته من به این رسیدم
T(n)=n1nT(n1)3n
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

ارسال:
  

ADELZX پاسخ داده:

RE: حل رابطه بازگشتی

(۰۱ شهریور ۱۳۹۳ ۰۲:۲۵ ب.ظ)Riemann نوشته شده توسط:  
(01 شهریور ۱۳۹۳ ۱۲:۴۶ ق.ظ)reza777gh نوشته شده توسط:  یعنی اینجوری!

T(n)=1n[T(n1)(n1)T(n1)3]=1n[nT(n1)3]=T(n1)3n

که اگه اشتباه نکنم میشه:
T(n)=T(n1)3n=ln(n)

امیدوارم که مفید باشه
روش درست همینه!!
البته من به این رسیدم
T(n)=n1nT(n1)3n

سلام.
دوست عزیز اگه اصلا سوای حل کردن دقیق این رابطه همون به صورت سوالم نگاه کنی "حداقل حداقل" یه هزینه ۳n رو تو فراخوانی اول تابع داری که باعث میشه کلااااااا توابع هزینه های زیر θ(n) مثل ln(n) تو همون فراخوانی اول رد بشه !!!
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

ارسال:
  

Riemann پاسخ داده:

RE: حل رابطه بازگشتی

سلام درسته، من یادمه این شبیه تحلیل مرتبه زمانی مرتب سازی سریع هست، کتاب Introduction to algoirthms a creative approach رو اگه دم دست داری، قسمت مرتبه زمانی ها یه اینجور مثالی زده.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

ارسال:
  

ADELZX پاسخ داده:

RE: حل رابطه بازگشتی

(۰۱ شهریور ۱۳۹۳ ۰۳:۳۹ ب.ظ)Riemann نوشته شده توسط:  سلام درسته، من یادمه این شبیه تحلیل مرتبه زمانی مرتب سازی سریع هست، کتاب Introduction to algoirthms a creative approach رو اگه دم دست داری، قسمت مرتبه زمانی ها یه اینجور مثالی زده.

سلام دوباره Smile
حرف شما کاملا درسته و آقای منبر توی کتابش تابع بازگشتی زیر رو برای حل زمان مسئله مرتب سازی سریع معرفی کرده :

T(n)=n12nn1i=1T(i)

ولی در واقع اگه یخورده دقت کنیم همین 2n هست که وقتی بعنوان ضریب α و β در تابع T ضرب میشه مجموع کسری بیشتر از مقدار ۱ رو به ما میده که خب براحتی طبق قضیه می تونیم اثبات کنیم که وقتی مجموع ضرایب بیشتر یک باشه هزینه ارتفاع این درخت θ(f(n))logn هست(ضمنا تاثیر دقیق این 2n رو توی سری هارمونیکی که آقای منبر معرفی کرده میشه دید). ولی توی مسئله ما ضریب 1n رو داریم که با جمع زدن ضریب به کسری کمتر از ۱ می رسیم و باعث میشه "سری ثابت" رو برای ارتفاع درخت درنظر بگیریم.

ضمنا یه نکته داخل پرانتزی اینکه اگه تابع که برای مرتب سازی سریع معرفی شده رو حتی به صورت همون عبارت اولش یعنی
T(n)=n11nni=1T(i)
نیز نگاه کنیم در اینجا سیگمای ما مجموع n تا عبارت و نه n-1 عبارت رو معرفی کرده که این باعث میشه دقیقا مجموع کسرهای ما ۱ بشه و طبق رابطه هزینه θ(f(n))logn رو داشته باشیم.


نکته ریز اختلاف این دو مسئله در همین " مجموع کسرهای ضرایب که آیا ۱ میشه یا کمتر از ۱" هستش که خب باید بهش دقت بشه و آقای قدسی به همین دلیل هزینه θ(n) رو برای این مسئله معرفی کرده.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

MiladCr7 پاسخ داده:

RE: حل رابطه بازگشتی

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

ارسال:
  

reza777gh پاسخ داده:

RE: حل رابطه بازگشتی

(۰۱ شهریور ۱۳۹۳ ۰۲:۰۴ ق.ظ)miladcr7 نوشته شده توسط:  سلام خسته نباشید خیلی خوب توصیح دادید واقعا مرسی.ولی انصافا ادم اولین بار این جور سوالا رو میبینه خیلی خیلی سخته بخواد اینقدر ابتکاری حلشون کنه


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

۰
ارسال:
  

ADELZX پاسخ داده:

RE: حل رابطه بازگشتی

سلام . این سوال از نوع بازگشتی های معمولیه فقط صورتش یخورده آدم رو میترسونه، سخت نیست و براحتی قابل اثبات Smile

اگر توجه کنیم فرم رابطه به صورت آشنای زیر هستش:
T(n)=T(αn)T(βn)cn

می دونیم که اگر αβ<1 جواب رابطه ما همون θ(n) میشه.

برای مثال فرض کنید ما n=3 قرار بدیم قسمت بازگشت تابع به صورت زیر باز میشه:

T(n)=T(1)3T(2)33n

که خب ساختاری شبیه نوع صورت مسئله ما که در ابتدا گفته شد داره با این تفاوت ریز که دیگه خبری از ضریب n برای بازگشت وجود نداره و فقط ضرایب α و β و امثالهم رو داریم. بزرگترین ضریب ثابت نیز همون فراخوانی آخر یعنی n-1 هستش (که البته کار ما رو برای اثبات نیز خیلی راحتر میکنه چرا که در سطوح بعدی درخت بازگشت دیگه خبری از هزینه به بزرگی ۳n وجود نداره و هزینه ها همگی ناچیز و مجموع ضرایبی کمتر از ۱ رو دارن).

در نهایت باعث میشه حد بالای رابطه رو در ابتدا T(n)=logni=1cin=θ(n) به ازای هر ورودی n برای جمع هزینه هر سطح درخت و کل ارتفاع درخت معرفی کنیم.
خب نکته آخر اینکه ضریب هزینه ثابت بازگشت ما (یعنی جمع کل سری در اینجا) خیلی کمتر از سری logni=1cin است که معرفی شد چرا که ما توی بازگشتمون ضرایبی بسیار کمتر از n رو فراخوانی میکنیم (در حد یک عدد ثابت مثل 13 یا 23). یعنی اگه بخوایم بهتر بگیم توی این مسئله ما فقط هزینه به بزرگی n رو در فراخوانی اول و در سطح اول درخت داریم (۳n) و برای بقیه سطوح درخت هزینه ثابت میشه که رابطه T(n)=3n(logn)1i=1ci دقیقا هزینه کل رو نشون میده که از θ(n) هست. در اینجا هزینه c رو هم میتونیم c=n1n تعریف کنیم(مخرج مشترک کسرها).
در هر صورت ما هزینه n رو "حداقل حداقل" در سطح اول درختمون داریم که باعث میشه رابطه رو حداقل از Omega(n) معرفی کنیم.

حلشم که نگاه کردم از کتاب θ(n) رو با استقراء اثبات کرده.
نقل قول این ارسال در یک پاسخ

۰
ارسال: #۱۰
  

shayesteb پاسخ داده:

RE: حل رابطه بازگشتی

سلام دوستان

واقعا ممنون از اینکه اینقدر خوب توضیح دادین Smile
نقل قول این ارسال در یک پاسخ



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  نظر در رابطه با استاد داور علیصا ۰ ۱,۹۱۴ ۱۴ مهر ۱۴۰۰ ۰۶:۰۵ ب.ظ
آخرین ارسال: علیصا
  درخواست(محاسبه پیچیدگی زمانی)(بخش روابط بازگشتی) Saman ۶ ۷,۸۶۳ ۲۷ خرداد ۱۳۹۷ ۰۳:۲۴ ب.ظ
آخرین ارسال: saeed_vahidi
  رابطه n~1 Mr.R3ZA ۰ ۲,۰۹۱ ۲۰ خرداد ۱۳۹۷ ۰۱:۳۵ ق.ظ
آخرین ارسال: Mr.R3ZA
  توصیه های مهم در رابطه با انتخاب رشته (مهم) Happiness.72 ۰ ۲,۲۷۱ ۱۹ خرداد ۱۳۹۷ ۱۲:۳۶ ق.ظ
آخرین ارسال: Happiness.72
  رابطه چند به یک somayeh afsh ۰ ۱,۸۲۴ ۰۷ خرداد ۱۳۹۷ ۱۲:۲۸ ب.ظ
آخرین ارسال: somayeh afsh
  رسم درخت بازگشتی برای t(n)=9t(n/3)+n jumper ۶ ۷,۱۷۱ ۱۷ دى ۱۳۹۶ ۰۶:۱۶ ب.ظ
آخرین ارسال: jumper
  حل رابطه جایگذاری با تکرار rahkaransg ۱ ۲,۴۸۵ ۱۷ دى ۱۳۹۶ ۱۱:۲۹ ق.ظ
آخرین ارسال: rahkaransg
  حل روابط بازگشتی درجه ۳ rahkaransg ۲ ۳,۳۰۰ ۱۴ دى ۱۳۹۶ ۰۵:۲۴ ب.ظ
آخرین ارسال: rahkaransg
  جواب رابطه های بازگشتی rahkaransg ۰ ۱,۹۴۵ ۱۴ دى ۱۳۹۶ ۱۲:۲۴ ق.ظ
آخرین ارسال: rahkaransg
  تقسیم در جبر رابطه ای Ella ۱ ۲,۴۲۷ ۲۸ آذر ۱۳۹۶ ۱۲:۰۰ ق.ظ
آخرین ارسال: Ella

پرش به انجمن:

Can I see some ID?

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

Feeling left out?


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

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

Feeling left out?


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