0% found this document useful (0 votes)
7 views8 pages

Algorithm - Part1-Www - Ilikephp - Ir

Uploaded by

w14012022
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views8 pages

Algorithm - Part1-Www - Ilikephp - Ir

Uploaded by

w14012022
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫‪-------‬‬
‫‪1‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫سالم ػزض هیکٌن خذهت ّوِ ی ضوب دٍستبى ػشیش ‪ .‬در خذهت ضوب ّستن ثب آهَسش طزاحی ٍ تحلیل الگَریتن ّب ‪.‬‬

‫در جلسِ ی اٍل قصذ دارم درثبرُ ی هقذهبت الگَریتن ٍ فلَچبرت ٍ ّوچٌیي هطخصبت یک الگَریتن هطبلجی رٍ ػزض کٌن ‪.‬‬

‫ّوچٌیي درثبرُ ی کبرآهذی الگَریتن ّن کوی صحجت هی کٌین ‪.‬‬

‫ّوِ ی هب ثب هفَْم هسئلِ آضٌب ّستین ‪ .‬یک هسئلِ پزسطی ّست کِ ثِ دًجبل پبسخص هی گزدین ٍ ثزای رسیذى ثِ جَاة اٍى‬

‫‪ ،‬ثبیذ راُ حلی رٍ ثکبر ثگیزین ‪ .‬هیطِ گفت کِ هجوَػِ ی هزاحل السم ثزای رسیذى ثِ پبسخ هطلَة یک هسئلِ ‪ ،‬رٍش حل یب‬

‫الگَریتن ّست ‪.‬‬

‫در ثزًبهِ ًَیسی کبهپیَتز ‪ ،‬ثزای حل یک هسئلِ ‪ ،‬ثبیذ هزحلِ ثِ هزحلِ ٍ قذم ثِ قذم ‪ ،‬ثِ کبهپیَتز ثگین کِ چگًَِ اٍى رٍ حل‬

‫کٌِ ‪ ٍ .‬ایي هزاحل قذم ثِ قذم ّوَى الگَریتن ًبهیذُ هیطِ ‪ .‬هثال ثزای هحبسجِ ی فبکتَریل ػذد ‪ n‬یب پیذا کزدى ثشرگتزیي ثیي‬

‫سِ ػذد ‪ ،‬ثبیذ هزاحل اًجبم کبر رٍ دقیقب ٍ هزحلِ ثِ هزحلِ ثِ کبهپیَتز یبد ثذین چَى قطؼب خَدش ّوچیي هکبًیشهی ثزای‬

‫تطخیص رٍش حل هسئلِ ٍ پیذا کزدى جَاة هسئلِ ًذارُ ‪ .‬پس ّویي الگَریتن ّب در قبلت یک ثزًبهِ ثِ کبهپیَتز هیزسِ ٍ اٍى‬

‫هیتًَِ هسبئلی رٍ هبًٌذ هسبئل ثبال حل کٌِ ‪.‬‬

‫هجحث الگَریتن هؼوَال هستقل اس سثبى ثزًبهِ ًَیسی ّست ٍ یکی اس هْوتزیي هجبحث هَجَد در ػلَم کبهپیَتز ثِ حسبة هیبد ‪.‬‬

‫یک الگَریتن ثبیذ ٍیژگی ّبیی داضتِ ثبضِ اس جولِ ‪:‬‬

‫‪-1‬دارای آغبس ٍ پبیبى هطخص ثبضِ ‪.‬‬

‫‪ّ -2‬ز هزحلِ دارای جشئیبت دقیق ثبضِ ‪.‬‬

‫‪ -3‬هزاحل دارای یک تزتیت درست ثبضِ ‪.‬‬

‫‪2‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫خت اهب هیطِ دستَر الؼول ّبرٍ ثِ اًَاع هختلفی تقسین کزد ثزخی اس اًَاع دستَر الؼول ّب ّن ػجبرت ّستٌذ اس ‪:‬‬

‫‪-1‬هحبسجبتی ٍ اًتسبثی ‪ :‬هیطِ ػولیبت هحبسجبتی اًجبم داد یب هقذاری رٍ ثِ هقذاری دیگز ًسجت ثذین ‪.‬‬

‫‪-2‬ضزطی ‪ :‬ثب ایي دستَرالؼول هیطِ اًَاع ضزٍط رٍ ثزرسی کزد ‪.‬‬

‫‪-3‬خزٍجی ‪ :‬در ایي دستَر الؼول ّن هقبدیزی ثِ چبح هیزسٌذ ‪.‬‬

‫ثیبیذ الگَریتن یک هسئلِ ی سبدُ رٍ ثزرسی کٌین ‪:‬‬

‫الگَریتوی کِ دٍ ػذد رٍ دریبفت کٌِ ٍ تؼییي کٌِ هجَػطَى اس ‪ 40‬ثشرگتز ّست یب ًِ ‪.‬‬

‫‪-1‬ضزٍع‬

‫‪-2‬دٍ ػذد ‪ bٍa‬اس ٍرٍدی دریبفت کي‬

‫‪ a+b -3‬رٍ هحبسجِ کي‬

‫‪-4‬آیب ‪ّ a+b > 40‬ست ؟ اگز ثلِ ثزٍ ثِ هزحلِ ی ‪7‬‬

‫‪"-5‬خیز" را چبح کي‪.‬‬

‫‪-6‬ثِ هزحلِ ی ‪ 8‬ثزٍ‬

‫‪ "-7‬ثلِ" را چبح کي‬

‫‪-8‬پبیبى‬

‫‪3‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫ّوَى طَر کِ هطبّذُ هی کٌیذ توبم ٍیژگی ّبیی کِ ثزای یک الگَریتن ػزض ضذ ‪ ،‬در الگَریتن سبدُ ی ثبال هطبّذُ هیطي ‪.‬‬

‫یؼٌی آغبس ٍ پبیبى هطخصی دارى ‪ّ .‬ز هزحلِ جشئیبت کبفی دارُ ٍ تزتیت هزاحل ّن کبهال درست ّستي ‪.‬‬

‫حبال فلَچبرت چیِ ؟؟‬

‫فلَچبرت یک راُ استبًذارد ثزای ًوبیص الگَریتن ّست کِ تَی اٍى ثبیذ اس یک سزی ضکل ّبی استبًذارد ثزای ًوبیص دستَر‬

‫الؼول ّب ی هختلف استفبدُ کزد ‪.‬‬

‫ضکل ّبی ثبال ّوَى ضکل ّبیی ّستٌذ کِ ثِ ػٌَاى استبًذارد در فلَچبرت ّب هَرد استفبدُ قزار هی گیزًذ‪..‬‬

‫ضکل اٍل " ضزٍع " یب " پبیبى " الگَریتن رٍ هطخص هیکٌِ ‪.‬‬

‫‪4‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫ضکل دٍم کِ یک "فلص" ّست ‪ ،‬جْت جزیبى هٌطقی در یک ثزًبهِ رٍ ًطَى هیذُ‬

‫ضکل سَم یؼٌی هتَاسی االضالع ‪ ،‬دستَر الؼول ّبی ٍرٍدی ٍ خزٍجی رٍ هطخص هیکٌِ‬

‫ضکل چْبرم ّن دستَر الؼول ّبی اًتسبة ٍ هحبسجبت رٍ ًطَى هیذُ‬

‫ٍ در ضکل آخز ّن دستَرات ضزطی ثزرسی هیطي‬

‫حبال یِ هثبل ّن اس فلَچبرت ثب ّن هیجیٌین‬

‫ایي فلَچبرت هزثَط ثِ الگَریتوی ّست کِ ‪ 3‬ػذد رٍ هیگیزُ ٍ تطخیص هیذُ آیب هیتًَي تطکیل یک هثلث ثذى یب خیز‬

‫خت حبال کِ ثب هفبّین پبیِ ای فلَچبرت ٍ الگَریتن آضٌب ضذین کوی راجغ ثِ ثحث کبرایی الگَریتن صحجت هی کٌین ‪..‬‬

‫گبّی ثزای حل یک هسئلِ ثب چٌذ راُ حل رٍ ثِ رٍ ّستین ٍ در ایي سهبى ّست کِ ثبیذ الگَریتن ثب ثیطتزیي کبرآهذی رٍ اًتخبة‬

‫کٌین ‪.‬‬

‫‪5‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫هالک ٍ هؼیبر کبرایی یک الگَریتن ّن ‪ 2‬چیش ّست ‪:‬‬

‫‪ -1‬سهبى اجزای الگَریتن ‪ -2‬هیشاى حبفظِ ثزای اجزا‬

‫اصطالحب ثِ اٍلی پیچیذگی سهبًی ٍ ثِ دٍهی پیچیذگی فضب ّن هیگي ‪..‬‬

‫ثِ دالیلی هؼوَال اٍلی رٍ ثیطتز هَرد ثزرسی قزار هیذى ٍ هبّن در اداهِ ی آهَسش ّبهَى سؼی هیکٌین ثیطتز ثب ایي هَضَع آضٌب‬

‫ثطین ‪.‬‬

‫خت حبال ّویي اثتذا سَالی پیص هیبد ‪:‬‬

‫❓چزا ثب ٍجَد ایٌکِ سزػت کبهپیَتز ّب در حبل افشایص ّست ٍ حبفظِ ّن در حبل ارساًتز ضذى ‪ ،‬ثزرسی کبرایی یک الگَریتن‬

‫ضزٍرت پیذا هیکٌِ ؟‬

‫جَاة رٍ ثبیک هثبل هتَجِ خَاّین ضذ ‪:‬‬

‫در ریبضیبت یکی اس هَضَػبت کبرثزدی ‪ ،‬دًجبلِ ی فیجًَبچی ّست ‪ .‬ثزای پیذا کزدى یکی اس جوالت ایي دًجبلِ ‪ 2‬راُ حل دارین ‪.‬‬

‫یکی الگَریتن ثبسگطتی ّست ٍ دیگزی الگَریتن تکزاری ‪.‬‬

‫‪) int fibo (int n‬‬

‫{‬

‫‪)if (n<=1‬‬

‫‪;return n‬‬

‫‪; )else return fibo(n-1) + fibo (n-2‬‬

‫‪6‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫}‬

‫️☝️☝️☝️☝ الگَریتن ثبسگطتی هحبسجِ ی جولِ ی ‪ n‬ام دًجبلِ ی فیجًَبچی‬

‫)‪int fibo (int n‬‬

‫{‬

‫; ‪index i‬‬

‫];‪int f[0.n‬‬

‫;‪f [0] = 0‬‬

‫) {‪if (n>0‬‬

‫;‪f [1] = 1‬‬

‫‪for ( i=2; i<= n ; i)++‬‬

‫] ;‪f[ i ] = f [i-1] + f [i-2‬‬

‫]; ‪}return f[n‬‬

‫}‬

‫️☝️☝️☝️☝ الگَریتن تکزاری هحبسجِ ی جولِ ی ‪ n‬ام دًجبلِ ی فیجًَبچی‬

‫‪7‬‬
‫مدرس ‪ :‬آقای ضیاءدید‬ ‫آموزش طراحی و تحلیل‬

‫فزض کٌین ثخَاین جولِ ی ‪ 100‬ام ایي دًجبلِ رٍ حسبة کٌین ‪ .‬اگز ثب الگَریتن تکزاری ایٌکبرٍ کٌین ‪ً 101 ،‬بًَ ثبًیِ طَل‬

‫هیکطِ در حبلی کِ ثب الگَریتن ثبسگطتی ایٌکبر در ‪ 13‬رٍس اًجبم خَاّذ پذیزفت ‪ .‬اگز جولِ ی ‪ 120‬ام رٍ ثخَاین حسبة کٌین ‪،‬‬

‫ثب الگَریتن تکزاری ‪ً 121‬بًَ ثبًیِ ٍقت هیخَاین ٍلی ثب رٍش ثبسگطتی ‪ 36‬سبل طَل هیکطِ ‪!!!!!!..‬‬

‫خت هطخصِ کِ ثحث کبرایی ثحث خیلی هْویِ ‪..‬‬

‫ایي دقیقب ثحث سهبى اجزاست ٍ حبال ثبیذ دیذ چزا ایي سهبى ّب هتفبٍتِ ٍ ایي اختالف ثسیبر سیبدُ ‪ ..‬ایي ّوَى پیچیذگی سهبًی‬

‫الگَریتن ّست کِ در جلسِ ی ثؼذی راجغ ثِ اٍى صحجت هی کٌین‬

‫خت ثزای جلسِ ی اٍل کبفیِ ‪ ..‬اى ضبءاهلل در جلسِ ی ثؼذی ثِ طَر کلی ثِ ثحث تحلیل الگَریتن ّب ٍ ًوبد ّبی هَجَد در‬

‫هحبسجِ ی پیچیذگی سهبًی الگَریتن ّب هی پزداسین ‪.‬‬

‫‪www.ILikePHP.ir‬‬

‫‪8‬‬

You might also like