جلسه ی ۵: حل روابط بازگشتی

Σχετικά έγγραφα
جلسه ی ۴: تحلیل مجانبی الگوریتم ها

مثال( مساله الپالس در ناحیه داده شده را حل کنید. u(x,0)=f(x) f(x) حل: به کمک جداسازی متغیرها: ثابت = k. u(x,y)=x(x)y(y) X"Y=-XY" X" X" kx = 0

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

جلسه ی ۱۰: الگوریتم مرتب سازی سریع

روش محاسبه ی توان منابع جریان و منابع ولتاژ

تحلیل مدار به روش جریان حلقه

دانشکده ی علوم ریاضی جلسه ی ۵: چند مثال

قاعده زنجیره ای برای مشتقات جزي ی (حالت اول) :

جلسه 9 1 مدل جعبه-سیاه یا جستاري. 2 الگوریتم جستجوي Grover 1.2 مسا له 2.2 مقدمات محاسبات کوانتمی (22671) ترم بهار

جلسه ی ۳: نزدیک ترین زوج نقاط

مفاهیم ولتاژ افت ولتاژ و اختالف پتانسیل

مدار معادل تونن و نورتن

جلسه ی ۱۱: درخت دودویی هرم

جلسه ی ۲۴: ماشین تورینگ

جلسه ی ۱۸: درهم سازی سرتاسری - درخت جست و جوی دودویی

معادلهی مشخصه(کمکی) آن است. در اینجا سه وضعیت متفاوت برای ریشههای معادله مشخصه رخ میدهد:

جلسه 3 ابتدا نکته اي در مورد عمل توابع بر روي ماتریس ها گفته می شود و در ادامه ي این جلسه اصول مکانیک کوانتمی بیان. d 1. i=0. i=0. λ 2 i v i v i.

تخمین با معیار مربع خطا: حالت صفر: X: مکان هواپیما بدون مشاهده X را تخمین بزنیم. بهترین تخمین مقداری است که متوسط مربع خطا مینیمم باشد:

جلسه 14 را نیز تعریف کرد. عملگري که به دنبال آن هستیم باید ماتریس چگالی مربوط به یک توزیع را به ماتریس چگالی مربوط به توزیع حاشیه اي آن ببرد.

تصاویر استریوگرافی.

جلسه 12 به صورت دنباله اي از,0 1 نمایش داده شده اند در حین محاسبه ممکن است با خطا مواجه شده و یکی از بیت هاي آن. p 1

هو الحق دانشکده ي مهندسی کامپیوتر جلسه هفتم

تحلیل الگوریتم پیدا کردن ماکزیمم

تمرینات درس ریاض عموم ٢. r(t) = (a cos t, b sin t), ٠ t ٢π. cos ٢ t sin tdt = ka۴. x = ١ ka ۴. m ٣ = ٢a. κds باشد. حاصل x٢

سايت ويژه رياضيات درسنامه ها و جزوه هاي دروس رياضيات

جلسه 22 1 نامساویهایی در مورد اثر ماتریس ها تي وري اطلاعات کوانتومی ترم پاییز

فعالیت = ) ( )10 6 ( 8 = )-4( 3 * )-5( 3 = ) ( ) ( )-36( = m n m+ m n. m m m. m n mn

جلسه 15 1 اثر و اثر جزي ی نظریه ي اطلاعات کوانتومی 1 ترم پاي یز جدایی پذیر باشد یعنی:

ﯽﺳﻮﻃ ﺮﯿﺼﻧ ﻪﺟاﻮﺧ ﯽﺘﻌﻨﺻ هﺎﮕﺸﻧاد

جلسه 16 نظریه اطلاعات کوانتمی 1 ترم پاییز

فصل پنجم زبان های فارغ از متن

آزمایش 8: تقویت کننده عملیاتی 2

فصل اول پیچیدگی زمانی و مرتبه اجرایی

باشند و c عددی ثابت باشد آنگاه تابع های زیر نیز در a پیوسته اند. به شرطی که g(a) 0 f g

جلسه دوم سوم چهارم: مقدمه اي بر نظریه میدان

دبیرستان غیر دولتی موحد

جلسه 28. فرض کنید که m نسخه مستقل یک حالت محض دلخواه

Angle Resolved Photoemission Spectroscopy (ARPES)

تئوری جامع ماشین بخش سوم جهت سادگی بحث یک ماشین سنکرون دو قطبی از نوع قطب برجسته مطالعه میشود.

فصل چهارم : مولتی ویبراتورهای ترانزیستوری مقدمه: فیدبک مثبت

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

جلسه 2 جهت تعریف یک فضاي برداري نیازمند یک میدان 2 هستیم. یک میدان مجموعه اي از اعداد یا اسکالر ها به همراه اعمال

آزمون مقایسه میانگین های دو جامعه )نمونه های بزرگ(

فهرست مطالب جزوه ی فصل اول مدارهای الکتریکی مفاهیم ولتاژ افت ولتاژ و اختالف پتانسیل تحلیل مدار به روش جریان حلقه... 22

همبستگی و رگرسیون در این مبحث هدف بررسی وجود یک رابطه بین دو یا چند متغیر می باشد لذا هدف اصلی این است که آیا بین

سلسله مزاتب سبان مقدمه فصل : زبان های فارغ از متن زبان های منظم

1) { } 6) {, } {{, }} 2) {{ }} 7 ) { } 3) { } { } 8) { } 4) {{, }} 9) { } { }

فصل دهم: همبستگی و رگرسیون

جلسه 2 1 فضاي برداري محاسبات کوانتمی (22671) ترم بهار

تمرین اول درس کامپایلر

6- روش های گرادیان مبنا< سر فصل مطالب

آزمایش 1: پاسخ فرکانسی تقویتکننده امیتر مشترك

مسائل. 2 = (20)2 (1.96) 2 (5) 2 = 61.5 بنابراین اندازه ی نمونه الزم باید حداقل 62=n باشد.

يﺎﻫ ﻢﺘﻳرﻮﮕﻟا و ﺎﻫ ﺖﺧرد فاﺮﮔ ﻲﻤﺘﻳرﻮﮕﻟا ﻪﻳﺮﻈﻧ :سرد ﻲﺘﺸﻬﺑ ﺪﻴﻬﺷ هﺎﮕﺸﻧاد ﺮﺗﻮﻴﭙﻣﺎﻛ مﻮﻠﻋ هوﺮﮔ ﻪﻴﻟوا ﺞﻳﺎﺘﻧ و ﺎﻫﻒ ﻳﺮﻌﺗ

Beta Coefficient نویسنده : محمد حق وردی

فصل 5 :اصل گسترش و اعداد فازی

نویسنده: محمدرضا تیموری محمد نصری مدرس: دکتر پرورش خالصۀ موضوع درس سیستم های مینیمم فاز: به نام خدا

عوامل جلوگیری کننده از موازی سازی عبارتند از : 1.هزینه I/O 2.هماهنگی/رقابت

مینامند یا میگویند α یک صفر تابع

ویرایشسال 95 شیمیمعدنی تقارن رضافالحتی

آموزش SPSS مقدماتی و پیشرفته مدیریت آمار و فناوری اطالعات -

7- روش تقریب میانگین نمونه< سر فصل مطالب

:موس لصف یسدنه یاه لکش رد یلوط طباور

بسم اهلل الرحمن الرحیم آزمایشگاه فیزیک )2( shimiomd

فیلتر کالمن Kalman Filter

مود لصف یسدنه یاه لیدبت

فهرست جزوه ی فصل دوم مدارهای الکتریکی ( بردارها(

به نام خدا. الف( توضیح دهید چرا از این تکنیک استفاده میشود چرا تحلیل را روی کل سیگنال x[n] انجام نمیدهیم

هندسه تحلیلی بردارها در فضای R

شاخصهای پراکندگی دامنهی تغییرات:

تلفات خط انتقال ابررسی یک شبکة قدرت با 2 به شبکة شکل زیر توجه کنید. ژنراتور فرضیات شبکه: میباشد. تلفات خط انتقال با مربع توان انتقالی متناسب

Top Down Parsing LL(1) Narges S. Bathaeian

ندرک درگ ندرک درگ شور

هد ف های هفته ششم: 1- اجسام متحرک و ساکن را از هم تشخیص دهد. 2- اندازه مسافت و جا به جایی اجسام متحرک را محاسبه و آن ها را مقایسه کند 3- تندی متوسط

فصل سوم جریان های الکتریکی و مدارهای جریان مستقیم جریان الکتریکی

هدف از این آزمایش آشنایی با رفتار فرکانسی مدارهاي مرتبه اول نحوه تأثیر مقادیر عناصر در این رفتار مشاهده پاسخ دامنه

اصول انتخاب موتور با مفاهیم بسیار ساده شروع و با نکات کاربردی به پایان می رسد که این خود به درک و همراهی خواننده کمک بسیاری می کند.

عنوان: رمزگذاري جستجوپذیر متقارن پویا

یدنب هشوخ یاه متیروگلا

مثلث بندی دلونی فصل 9 مژگان صالحی- دی 92 استاد راهنما: جناب آقای دکتر محمد فرشی


به نام خدا. Sparse Coding ستاره فرامرزپور

به نام حضرت دوست. Downloaded from: درسنامه

می باشد. انشاال قسمت شعاعی بماند برای مکانیک کوانتومی 2.

Archive of SID. یا یات کار دی وا د لا جان مقدمه 1 2 چکیده 1 SDE. ا درس الکترونیکی:

به نام ستاره آفرین قضیه ویریال جنبشی کل ذرات یک سیستم پایدار مقید به نیرو های پایستار را به متوسط انرژی پتانسیل کل شان

srmphp.blog.ir موسسه آموزش عالی مهراروند ساختمان داده مهندس سید رسول موسوی تهیه و تنظیم: الهام صباحی

فصل چهارم : مولتی ویبراتورهای ترانزیستوری مقدمه: فیدبک مثبت

خاستگاه های نظر یه میدان کوانتومی

تعیین محل قرار گیری رله ها در شبکه های سلولی چندگانه تقسیم کد

1 دایره فصل او ل کاربردهای بسیاری داشته است. یک قضیۀ بنیادی در هندسه موسوم با محیط ثابت دایره دارای بیشترین مساحت است. این موضوع در طراحی

ثابت. Clausius - Clapeyran 1

3 لصف یربج یاه ترابع و ایوگ یاه ناوت

جزوه کارگاه برنامه نویسی

سینماتیک مستقیم و وارون

پنج ره: Command History

I = I CM + Mh 2, (cm = center of mass)

خالصه درس: نویسنده:مینا سلیمان گندمی و هاجر کشاورز امید ریاضی شرطی. استقالل متغیر های تصادفی پیوسته x و y استقالل و امید ریاضی

عنوان مقاله "نقاط تنها تنها مانده اند"

ارزیابی بهره وری متقاطع DEA بر پایه بهبود پارتو

Transcript:

دانشکده ی علوم ریاضی ساختمان داده ها ۶ مهر ۲ جلسه ی ۵: حل روابط بازگشتی مدر س: دکتر شهرام خزاي ی نگارنده: ا رمیتا ثابتی اشرف و علی رضا علی ا بادیان ۱ مقدمه پیدا کردن کران مجانبی توابع معمولا با پیچیدگی همراه است و راه حل ا سانی ندارد هنگامی که روابط بازگشتی داشته باشیم این کار سخت تر هم می شود برای محسابه ی زمان اجرای الگوریتم های تقسیم و حل لازم است که کران مجانبی روابط بازگشتی ا ن ها رو پیدا کنیم در این بخش تکنیک هایی برای پیدا کردن کران های روابط بازگشتی معرفی می کنیم و در انتها قضیه ی اصلی عنوان می شود که در پیدا کردن کران مجانبی طیف وسیعی از توابع کاربرد دارد در زیر نمونه های ساده ای از روابط بازگشتی به همراه جواب ا ن ها مشاهده می شوند: ۱ n = ۱ n T (n ۱) + ۱ n ۲ ۱ n = ۱ ۲T ( n ۲ ) + n n ۲ n log n + n ۰ n = ۲ T ( n) + ۱ n log log n ۱ n = ۱ T ( n ) + T ( ۲n Θ(n log n) ) + n n ۲ یکی از روش هایی که می توانیم برای حل این روابط استفاده کنیم این است که ابتدا فرم کلی جواب را حدس بزنیم سپس با کمک استقرا مقادیر ثابت را پیدا کنیم و نشان دهیم که جوابمان درست است این روش روش خوبی برای حل روابط بازگشتی است ولی باید بتوانیم در ابتدا فرم جواب را حدس بزنیم نکته ۱ وقتی ما مساله ای را به صورت مجانبی حل می کنیم دیگر برایمان مقدار اولیه مهم نیست البته اگر موقع اثبات استقرایی به مقدار ثابتی جز مقدار ثابت اولیه (فرض شده) برسیم اثباتمان غلط است نکته ۲ روشی کلی برای این که حدس خوبی در مورد جواب رابطه ی بازگشتی بزنیم وجود ندارد ولی اگر رابطه ای شبیه به رابطه ای که قبلا دیده ایم باشد بهتر است که حدس ما شبیه به جواب رابطه ی قبلی باشد مثال ۱ کران بالای مجانبی تابع ۴T ( n ) + n چیست ۴ به اشتباه حدس می زنیم که کران بالای مجانبی O(n) باشد بنابراین فرض ناصحیح استقرا به صورت زیر است: ضریب ثابت c وجود دارد به طوریکه برای n های به اندازه کافی بزرگ داریم T (n) cn حال ببینیم چه مشکلی در روند اثبات گذار استقرا پیش میا ید پایه: با توجه به این که (۱)O T (۱) = نیازی به چک کردن پایه استقرا نیست ۵-۱

گام : فرض کنید به ازای همه ی n هایی که n < n از جمله n = n ۴ فرض استقرا برقرار باشد حال داریم: T (n ) cn = T ( n ۴ ) c n ۴ = T (n) ۴(c n ) + n = cn + n = (c + ۱)n ۴ چون به فرض استقرا نرسیدیم استدلال غلط است پس نمی توانیم ادعا کنیم O(n) است ۲T ( n ۲ چیست مثال ۲ کران دوطرفه مجانبی تابع Θ(n) + ) حدس می زنیم که کران دوطرفه مجانبی (n Θ(n log باشد برای اثبات باید نشان دهیم: I) O(n log n) II) Ω(n log n) T (n) ۲T ( n ۲ برای ابتدا (I) را اثبات می کنیم فرض کنید c ضریب ثابتی باشد که به ازای ا ن رابطه ی + cn ) n های به اندازه ی کافی بزرگ برقرار است فرض استقرا را به صورت زیر در نظر می گیریم: ضریب ثابت d وجود دارد به طوری که برای n های به اندازه کافی بزرگ T (n) dn log n است T ( n ۲ ) d n ۲ log n ۲ T (n) ۲T ( n ۲ ) + cn ۲(d n ۲ log n ۲ ) + cn = dn log n dn + cn رابطه ی فوق نشان می دهد که اگر d c انتخاب شود فرض T (n) dn log n صحیح است بنابراین (I) برقرار T (n) ۲T ( n ۲ حال (II) را اثبات می کنیم فرض کنید c ضریب ثابتی باشد که به ازای ا ن رابطه ی + cn ) برای n های به اندازه ی کافی بزرگ برقرار است فرض استقرا را به صورت زیر در نظر می گیریم: ضریب ثابت d وجود دارد به طوری که برای n های به اندازه کافی بزرگ T (n) dn log n T ( n ۲ ) d n ۲ log n ۲ T (n) ۲T ( n ۲ ) + cn ۲(d n ۲ log n ۲ ) + cn = dn log n dn + cn رابطه ی فوق نشان می دهد که اگر d c انتخاب شود فرض T (n) dn log n صحیح است بنابراین (II) هم برقرار است ۲T ( n ۲ صدق می کند n) Θ(n log است در نتیجه کران دوطرفه مجانبی تابع (n) T که در رابطه Θ(n) + ) مثال کران بالای مجانبی تابع ) Θ(n۲ ۸T ( n ۲ ) + چیست حدس می زنیم که کران بالای مجانبی ) O(n باشد فرض کنید c ضریب ثابتی باشد که به ازای ا ن رابطه ی T (n) ۸T ( n ۲ ) + cn۲ برای n های به اندازه ی کافی بزرگ برقرار است فرض استقرا را به صورت زیر در نظر می گیریم: ضریب ثابت d وجود دارد به طوری که برای n های به اندازه کافی بزرگ T (n) dn با توجه به این که رفتار مجانبی تابع تغییر نمی کند می توانیم برای راحتی در اثبات فرض استقرا را به صورت زیر اصلاح نماییم: ضرایب ثابت d و d وجود دارند به طوری که برای n های به اندازه کافی بزرگ T (n) dn d n ۲ حال با دنبال کردن اثبات گذار استقرا شرایط لازم برای وجود چنین d و dای را تعیین می کنیم: ۵-۲

T (n) ۸T ( n ۲ ) + cn۲ ۸(d( n ۲ ) d ( n ۲ )۲ ) + cn ۲ = dn d n ۲ + cn ۲ رابطه ی فوق نشان می دهد که اگر d d c انتخاب شود فرض T (n) dn d n ۲ صحیح است در نتیجه کران بالای مجانبی تابع (n) T که در رابطه ) Θ(n۲ ۸T ( n ۲ ) + صدق می کند ) O(n است ۲ درخت بازگشت در این جا استفاده از درخت بازگشت (درخت محاسبه) را به عنوان یک روش کارا مد برای حدس زدن جواب روابط بازگشتی معرفی می کنیم ساختار این درخت بدین شکل است که هر گره نماینده ی یک زیر مساله از مسي له ی اصلی است و فرزندانش نشان دهنده ی این امرند که به صورت بازگشتی مسي له به زیر مسي له هایی با چه اندازه ای می شکند برای یافتن هزینه ی حل بازگشتی مسي له در درخت پایین می رویم تا به زیر مسي له ای برسیم که هزینه ا ن را می دانیم و پس از ا ن هزینه هر گره مجموع هزینه های فرزندانش به علاوه ی هزینه شکستن ا ن به زیر مساي ل (که اغلب ثابت است) می شود با استفاده از درخت بازگشت می توان اغلب حدس های متناسب تری زد است T ( n ) + T ( ۲n چیست مثال ۴ کران دوطرفه مجانبی تابع Θ(n) + ) با استفاده از درخت بازگشت سعی می کنیم حدس مناسبی برای کران دوطرفه مجانبی تابع (n) T بزنیم فرض کنید c T (n) T ( n ) + T ( ۲n برقرار باشد درخت زیر را ضریب ثابتی باشد که برای nهای به اندازه کافی بزرگ رابطه + cn ) در نظر بگیرید که در ا ن برگ ها به مقدار (۱)O ختم می شوند عددی که در کنار هر سطح درخت نوشته شده حداکثر هزینه ای است که برای تقسیم و ترکیب زیرمسا له ها نیاز است این عدد برای همه سطح ها یسکسان و حداکثر برابر cn n cn n ۲n c( n + ۲n ) = cn n ۲n ۲n ۴n c( n + ۲n + ۲n + ۴n ) = cn مجموع( n O(n lg طولانی ترین مسیر از ریشه به یک برگ مسیر زیر است: n ( ۲ )n ( ۲ )۲ n ۱ ۵-

( ۲ ۲ است پس ارتفاع درخت برابر با n) h = O(log n) = O(lg اگر ارتفاع درخت را با h نشان دهیم چون (۱)O h( n = خواهد بود ما انتظار داریم که جواب رابطه بازگشتی حداکثر برابر با تعداد مرحله ها ضرب در هزینه ی هر مرحله یا n) O(cn log n) = O(n lg باشد پس حدس می زنیم که کران دوطرفه مجانبی n) Θ(n log باشد ۲ برای اثبات دقیق ادعای فوق باید نشان دهیم: I) O(n log n) II) Ω(n log n) T (n) T ( n )+T ( ۲n ابتدا (I) را اثبات می کنیم فرض کنید c ضریب ثابتی باشد که به ازای ا ن رابطه ی )+cn برای n های به اندازه ی کافی بزرگ برقرار است فرض استقرا را به صورت زیر در نظر می گیریم: ضریب ثابت d وجود دارد به طوری که برای n های به اندازه کافی بزرگ T (n) dn log n T (n) dn log n T (n) T ( n ) + T ( ۲n ) + cn d n log n + d ۲n log ۲n + cn = d n log n d n log + d ۲n log n d ۲n = dn log n dn log + cn log + cn رابطه ی فوق نشان می دهد که اگر c d log انتخاب شود فرض T (n) dn log n صحیح است بنابراین (I) برقرار است T (n) T ( n )+T ( ۲n حال (II) را اثبات می کنیم فرض کنید c ضریب ثابتی باشد که به ازای ا ن رابطه ی )+cn برای n های به اندازه ی کافی بزرگ برقرار است فرض استقرا را به صورت زیر در نظر می گیریم: ضریب ثابت d وجود دارد به طوری که برای n های به اندازه کافی بزرگ T (n) dn log n T (n) dn log n T (n) T ( n ) + T ( ۲n ) + cn d n log n + d ۲n log ۲n + cn = d n log n d n log + d ۲n log n d ۲n = dn log n dn log + cn log + cn رابطه ی فوق نشان می دهد که اگر c d log انتخاب شود فرض T (n) dn log n صحیح است بنابراین (II) هم برقرار است Θ(n log n) صدق می کند T ( n ) + T ( ۲n در نتیجه کران دوطرفه مجانبی تابع (n) T که در رابطه Θ(n) + ) است قضیه اصلی برای حل روابط بازگشتی at ( n b است که در ا ن ۱ a و > ۱ b اعداد قضیه اصلی روشی برای حل روابط بازگشتی به فرم f(n) + ) ثابت هستند و f(n) یک تابع مثبت دارای مجانب است رابطه فوق زمان اجرای یک الگوریتم با اندازه n را که به a زیر مسي له با اندازه n/b تقسیم شده است نشان می دهد در این رابطه a زیر مسي له به طور بازگشتی حل می شوند و f(n) نیز زمان لازم را برای تقسیم و ادغام مسي له نشان می دهد ۵-۴

at ( n b تعریف شده است که در ا ن f(n) تابعی قضیه ۱ (قضیه اصلی) رابطه بازگشتی (n) T بصورت )+f(n) مثبت می باشد و اعداد ۱ a و > ۱ b ثابت هستند: اگر برای > ۰ ϵ ثابت f(n) از ) a ϵ O(n log b باشد ا نگاه (n) T از ) a Θ(n log b خواهدبود اگر ) a f(n) = Θ(n log b باشد ا نگاه n) Θ(n log b a log خواهد بود اگر برای > ۰ ϵ ثابت ) a+ϵ f(n) = Ω(n log b باشد و همچنین اگر برای n های به اندازه کافی بزرگ و < ۱ c ثابت رابطه cf(n) af(n/b) < برقرار باشد (که شرط انتظام ۱ نامیده می شود) ا نگاه Θ(f(n)) خواهد بود در هر کدام از این سه حالت ما تابع f(n) را با n log b a مقایسه می کنیم و تابع بزرگ تر جواب رابطه ی بازگشتی را مشخص می کند البته برای حالت تساوی باید ضریب log n را لحاظ کرد برای استفاده از قضیه ی اصلی کافیست مشخص کنیم که رابطه ی داده شده کدام یکی از حالت قضیه است سپس جواب را محاسبه نماییم T ( n بنویسیم رفتار مجانبی b ( T و یا ) n b نکته ممکن است n/b یک عدد اعشاری باشد اگر به جای (n/b) T ) رابطه بازگشتی تغییر نمی کند ولی برای راحتی در رابطه های بازگشتی الگوریتم های تقسیم و حل از نوشتن کف و سقف صرف نظر می شود مثال ۵ یک حالت خاص و کاربردی قضیه ی اصلی برای حل معادله بازگشتی at ( n b ) + nd است در این صورت سح حالت مذکور به صورت زیر است: ۱) d < log b a a > b d Θ(n log b a ) ۲) d = log b a a = b d Θ(n log b a log n) ) d > log b a a < b d Θ(n d ) مثال ۶ با استفاده از قضیه ی اصلی کران مجانبی توابع زیر را محاسبه کنید ۵T ( n ۲ ) + Θ(n۲ ) ۱ حالت > ۲ ۲ ۱ ۵ Θ(n log ۲ ۵ ) ۲۷T ( n ) + Θ(n ) ۲ حالت = ۲ ۲۷ Θ(n log n) ۵T ( n ۲ ) + Θ(n ) حالت < ۲ ۵ Θ(n ) نکته ۴ ممکن است بعضی از روابط بازگشتی باشند که در شرایط این قضیه صدق نکنند و برای محاسبه ی ا ن ها مجبور باشیم از روش های دیگر استفاده کنیم ۱ رابطه ۲T (۲/n) + n log n را در نظر بگیرید با توجه به نماد گذاری های قضیه اصلی بوضوح برای هر > ۰ ϵ دلخواه ) ϵ ۱ f(n) O(n و Θ(n) f(n) است بنابراین به اشتباه ممکن است رابطه بازگشتی به عنوان حالت سوم قضیه اصلی در نظر گرفته شود ولی دقت کنید که برای هیچ > ۰ ϵ تساوی ) ϵ log n = Ω(n برقرار نیست ۱ regularity condition ۵-۵

۲۷T ( n n نیز قضیه اصلی کاربردی ندارد زیرا باید n log ۲۷ را با ) + Θ( log n ۲ برای رابطه بازگشتی ) f(n) = Θ( n نیز از log n ) نیست تابع O(log (n از nϵ مثبتی ϵ مقایسه کرد از ا نجایی که برای هیچ )Ω n log n ) ) ϵ O(n نخواهد بود در مورد رابطه بازگشتی (n T (۲/n) + ۲)n cos هم نمی توان قضیه اصلی را به کار برد زیرا با ا نکه برای هر ۱ ϵ تابع ) ϵ+۰ f(n) = Ω(n است ولی شرط انتظام برای f(n) برقرار نیست ۴ دنباله بازگشتی و محاسبه بازگشتی در الگوریتم های بازگشتی و به خصوص هنگام محاسبه ی حاصل یک عبارت به صورت بازگشتی (مانند سری فیبوناچی) معمولا پیچیدگی راه حل مستقیم و بازگشتی باهم متفاوت است الگوریتم های بازگشتی علی رغم اینکه گاهی راحت تر پیاده سازی می شوند اغلب کندترند زیرا در ا ن ها الگوریتم به ازای یک مقدار بعضا چندبار تکرار می شود مثلا در محاسبه ی عدد پنجم فیبوناچی به روش بازگشتی بار عدد دوم فیبوناچی و ۲ بار عدد سوم این سری محاسبه می گردند ولی در راه حل مستقیم ا ن هر اندیس این سری یک بار حساب می شود ۱۴ راه حل بازگشتی سری فیبوناچی Algorithm 1 Algorithm: RecursiveFibonacci function Fib(n) [assumes n 1] if n 3 then x Fib(n 1) y Fib(n 2) return x + y else return 1 +۱ ۵ ))Θ است زیرا حالات تکراری در ا ن محسابه می شوند به همین دلیل باید کد ۲ پیچیدگی زمانی این روش ) n ) این برنامه را به طور مستقیم پیاده سازی کنیم و از روش بازگشتی استفاده نکنیم ۲۴ راه حل مستقیم سری فیبوناچی Algorithm 2 Algorithm: Fibonacci function Fib(n) F [0] = F [1] = 1 for i = 2 to n do F [i] = F [i 1] + F [i 2] return F [n] ۵-۶

پیچیدگی زمانی این روش Θ(n) است زیرا برای محاسبه ی nامین عدد فیبوناچی اعداد قبل از ا ن فقط یک بار محاسبه می شوند و کاری تکراری انجام نمی دهیم ۵-۷