آموزش جامع طراحی و تحلیل الگوریتم‌ها

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

برگزارکننده:  دانشگاه تهران  دانشگاه تهران
مدرس دوره:
4.8 (20 رای)
سطح: مقدماتی
 رایگان
  
زمان مورد نیاز برای گذارندن دوره:  78 جلسه
مجموع محتوای آموزشی:  49 ساعت ویدئو
 (قابل دانلود می‌باشد)

سرفصل‌های دوره آموزش جامع طراحی و تحلیل الگوریتم‌ها

فصل اول: مفاهیم مقدماتی
  جلسه 0 - بخش اول: مقدمه‌ای بر درس و سرفصل‌ها
"17:03  
  جلسه 0 - بخش دوم: مقدمه‌ای بر درس و سرفصل‌ها
"09:46  
  جلسه 1: مقدمه‌ای بر الگوریتم‌ها
"52:48  
  جلسه 2: تحلیل الگوریتم‌ها
"46:51  
  اسلایدهای طراحی و تحلیل الگوریتم
"00:03  
فصل دوم: روش‌های کلاسیک طراحی الگوریتم‌ها
  جلسه 3: روش تقسیم و غلبه
"37:12  
  جلسه 4: حل معادلات بازگشتی
"58:15  
  جلسه 5: توابع مولد
"56:10  
  جلسه 6: ضرب سریع‌تر اعداد
"18:50  
  جلسه 7: ضرب سریع‌تر ماتریس‌ها (روش استراسن)
"21:17  
  جلسه 8: مرتب‌سازی سریع
"31:32  
  جلسه 9: حد پایین برای مسئله مرتب‌سازی
"20:22  
  جلسه 10: مسئله انتخاب کوچک‌ترین عدد
"52:53  
  جلسه 11: برنامه‌ریزی پویا
"37:45  
  جلسه 12: ضرب دنباله‌ای از ماتریس‌ها
"60:14  
  جلسه 13: درخت جستجوی دودویی بهینه
"39:46  
  جلسه 14: طولانی‌ترین زیررشته مشترک (LCS)
"42:26  
  جلسه 15: روش حریصانه
"37:54  
  جلسه 16: مسئله انتخاب فعالیت‌ها
"47:22  
  جلسه 17: مسئله کوله‌پشتی
"57:17  
  جلسه 18: کدگذاری هافمن
"48:09  
  جلسه 19: روش بازگشت به عقب
"42:41  
  جلسه 20: الگوریتم بازگشت به عقب برای مسئله کوله پشتی
"14:42  
  جلسه 21: روش شاخه و تحدید
"42:08  
فصل سوم: نظریه گراف و الگوریتم‌های آن
  جلسه 22: مفاهیم اولیه گراف‌ها
"48:36  
  جلسه 23: پیمایش سطحی گراف (BFS)
"24:48  
  جلسه 24: پیمایش عمقی گراف (DFS)
"39:14  
  جلسه 25: مرتب‌سازی توپولوژیکی
"22:41  
  جلسه 26: مؤلفه‌های همبند گراف
"44:57  
  جلسه 27: کوتاه‌ترین مسیر در گراف
"26:36  
  جلسه 28: الگوریتم دایکسترا
"30:52  
  جلسه 29: الگوریتم بلمن-فورد
"31:18  
  جلسه 30: کوتاه‌ترین مسیر بین همه رئوس با ضرب ماتریس‌ها
"24:44  
  جلسه 31: کوتاه‌ترین مسیر بین همه رئوس با روش فلوید-وارشال
"16:19  
  جلسه 32: درخت پوشای کمینه
"25:33  
  جلسه 33: الگوریتم‌های درخت پوشای کمینه
"24:56  
فصل چهارم: تطابق رشته‌ها
  جلسه 34: تطابق دقیق رشته‌ها
"18:00  
  جلسه 35: تطابق رشته‌ها به کمک همنهشتی (الگوریتم رابین-کارپ)
"40:11  
  جلسه 36: تطابق رشته‌ها به کمک اتوماتا
"68:19  
  جلسه 37: تطابق رشته‌ها به روش KMP
"29:30  
فصل پنجم: نظریه NP-Completeness و شناسایی مسائل سخت
  جلسه 38: الگوریتم‌های غیرقطعی
"79:11  
  جلسه 39: نظریه NP-Completeness
"87:49  
  جلسه 40: اثبات سختی مسئله k-Clique
"42:08  
  جلسه 41: اثبات سختی مسئله k-Vertex-Cover
"27:26  
  جلسه 42: اثبات سختی مسئله Subset-Sum
"45:43  
  جلسه 43: اثبات سختی مسئله دور همیلتونی
"32:57  
  جلسه 44: اثبات سختی مسئله Coloring
"19:50  
فصل ششم: روش‌های قطعی برای حل مسائل سخت
  جلسه 45: الگوریتم‌های شبه‌چندجمله‌ای
"70:08  
  جلسه 46: روش پارامتری
"63:07  
  جلسه 47: روش شاخه و تحدید
"22:35  
  جلسه 48: روش کاهش نرخ رشد پیچیدگی الگوریتم‌ها
"36:54  
  جلسه 49: جستجوی محلی
"64:11  
  جلسه 50: جستجوی محلی با عمق متغیر
"47:10  
  جلسه 51: دسته‌بندی مسائل از دیدگاه روش‌های جستجوی محلی
"53:31  
فصل هفتم: الگوریتم‌های تقریبی
  جلسه 52: مقدمه‌ای بر الگوریتم‌های تقریبی
"29:59  
  جلسه 53: الگوریتم تقریبی برای مسئله Makespan Scheduling
"30:30  
  جلسه 54: الگوریتم تقریبی برای مسئله Vertex Cover
"12:07  
  جلسه 55: الگوریتم تقریبی برای مسئله Set Cover
"52:29  
  جلسه 56: الگوریتم تقریبی برای مسئله Subset Sum
"47:00  
  جلسه 57: مفهوم پایداری الگوریتم‌های تقریبی
"45:39  
  جلسه 58: الگوریتم تقریبی برای مسئله کوله‌پشتی ساده
"41:35  
  جلسه 59: الگوریتم‌های تقریبی برای مسئله کوله‌پشتی و پایداری آن‌ها
"77:53  
  جلسه 60: مفهوم L-Reduction و دسته‌بندی مسائل از دیدگاه الگوریتم‌های تقریبی
"62:50  
فصل هشتم: الگوریتم‌های تصادفی
  جلسه 61: مقدمه‌ای بر الگوریتم‌های تصادفی
"30:40  
  جلسه 62: الگوریتم تصادفی لاس‌وگاس برای مرتب‌سازی سریع
"32:20  
  جلسه 63: الگوریتم تصادفی لاس‌وگاس برای انتخاب کوچک‌ترین عدد
"28:28  
  جلسه 64: الگوریتم تصادفی لاس‌وگاس برای Choice روی ماشین ارتباطی
"25:50  
  جلسه 65: الگوریتم‌ تصادفی مونت‌کارلو با خطای یک‌طرفه
"35:17  
  جلسه 66: الگوریتم‌ تصادفی مونت‌کارلو با خطای دوطرفه
"23:12  
  جلسه 67: الگوریتم‌ تصادفی مونت‌کارلو با خطای نامحدود
"37:23  
  جلسه 68: الگوریتم‌‌های تصادفی برای مسائل بهینه‌سازی
"20:46  
  جلسه 69: الگوریتم‌ تصادفی برای مسئله Max-kSAT
"25:51  
  جلسه 70: الگوریتم‌ تصادفی برای مسئله Max-Cut
"18:22  
فصل نهم: سایر روش‌ها
  جلسه 71: روش Simulated Annealing
"35:24  
  جلسه 72: روش Tabu Search
"14:55  
  جلسه 73: الگوریتم ژنتیک
"69:10  
  جلسه 74: مقدمه‌ای بر محاسبات مولکولی
"30:53  
  جلسه 75: الگوریتم مولکولی یافتن مسیر همیلتونی
"27:44  

درباره دوره

درس طراحی و تحلیل الگوریتم‌ها یکی از مهم‌ترین و پایه‌ای‌ترین دروس در رشته‌های علوم کامپیوتر و همچنین مهندسی کامپیوتر است. هدف از این درس، مطالعه و بررسی روش‌های طراحی الگوریتم‌ها برای حل مسائل مختلف و چگونگی تحلیل و اثبات درستی الگوریتم‌های ارائه شده برای حل آن‌ها است. آشنایی هرچه بیشتر با مسائل در حوزه‌های مختلف علمی باعث افزایش توانایی افراد در ارائه راه‌حل‌های الگوریتمی برای مسائل جدید خواهد شد. همچنین بسیاری از مسائل محاسباتی مطرح در حوزه‌های مختلف علم جزء مسائلی هستند که حل الگوریتمی آن‌ها در زمان قابل‌قبول به‌راحتی امکان‌پذیر نمی‌باشد، در نتیجه دسته‌بندی مسائل و شناسایی مسائل محاسباتی سخت که در زمان قابل‌قبول نمی‌توان جواب آن‌ها را به دست آورد، نیز از اهمیت ویژه‌ای برخوردار است. 
در این دوره آموزشی، ابتدا به مفاهیم مقدماتی در حوزه طراحی و تحلیل الگوریتم‌ها پرداخته شده و روش‌های کلاسیک برای حل مسائل مختلف به همراه مثال‌های متنوع ارائه می‌شود. برای این منظور روش‌هایی همچون روش تقسیم و غلبه، برنامه‌ریزی پویا، روش حریصانه، بازگشت به عقب و روش شاخه و تحدید موردبحث قرار می‌گیرند. به شکل ویژه، الگوریتم‌های مطرح در حوزه نظریه گراف و همچنین تطابق رشته‌ها مورد بررسی قرار می‌گیرند. پس از آن، به بررسی سختی مسائل با استفاده از نظریه‌های موجود پرداخته می‌شود. سپس روش‌های الگوریتمی موجود برای حل مسائل سخت معرفی و در مورد هر یک از روش‌ها نمونه‌هایی نیز موردبحث قرار می‌گیرند، از جمله این روش‌ها می‌توان به الگوریتم‌های قطعی، الگوریتم‌های تقریبی، الگوریتم‌های تصادفی، روش‌های مکاشفه‌ای و روش‌های محاسباتی نوین اشاره کرد. در بسیاری از این روش‌ها، درستی الگوریتم‌های ارائه شده اثبات و منابع موردنیاز برای اجرای این الگوریتم‌ها به‌صورت دقیق تحلیل می‌شوند.

آموزش جامع طراحی و تحلیل الگوریتم‌ها مناسب چه کسانی است؟

این درس برای تمامی علاقه‌مندان به کامپیوتر، مخصوصاً حوزه طراحی و تحلیل الگوریتم‌ها، می‌تواند مفید باشد. آشنایی با ریاضیات، برنامه‌نویسی و داده ساختارها می‌تواند در درک بهتر مفاهیم این درس کمک‌کننده باشد. محتوای این دوره در نیمسال اول سال تحصیلی ۰۱-۱۴۰۰ در گروه علوم کامپیوتر دانشگاه تهران ارائه شده است.

***این دوره درحال تکمیل است***

درباره استاد

maktabkhooneh-teacher محمد گنج‌تابش

دکتر محمد گنج‌تابش عضو هیئت‌علمی گروه علوم کامپیوتر دانشگاه تهران است. ایشان دوره کارشناسی خود را در رشته ریاضی محض از دانشگاه تبریز و دوره‌های کارشناسی ارشد و دکتری را در رشته علوم کامپیوتر از دانشگاه تهران به اتمام رسانده‌اند. ایشان همچنین دکتری دوم خود را در رشته بیوانفورماتیک دانشگاه اکول پلی‌تکنیک فرانسه گذرانده‌اند. زمینه‌های تحقیقاتی موردعلاقه وی الگوریتم‌های بیوانفورماتیک (مسائل مربوط به ساختارهای RNA) و علوم اعصاب محاسباتی، به‌خصوص شبکه‌های عصبی ضربه‌ای و مدل‌سازی فرایندهای سیستم بینایی در مغز است.

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران

تا کنون نظری برای این دوره ثبت نشده است. برای ثبت نظر باید ابتدا در دوره ثبت نام کرده و دانشجوی دوره باشید.
1402-10-14
excellent
1402-10-06
فوق‌العاده. نه تنها کاملا مبحث رو متوجه میشید بلکه طوری توضیح میدن که آدم لذت می بره.
محمد حسین عابدی 1402-10-03
خیلی دوره عالی و کاملی بود👌👌
مهیار امجدی 1402-09-06
دورهٔ خوب و جامعیه استاد محترم هم تسلط زیادی به مطالب داره
1402-06-24
واقعا این دوره عالی است. بی نهایت سپاس از استاد گنج تابش عزیز
علیرضا کیومرثی 1401-11-17
استاد تابش فوق العادس ، ممنونم ازتون
مریم میرزائی 1401-10-22
❤️ممنون امیدوارم موفق باشید استاد
رضا تکریمی 1401-03-30
بی نظیرید استاد واقعا از این همه شور و عشق و علاقه به آموزش می پردازید فقط باید صمیمانه تشکر کرد.
1401-01-17
بسیار از آموزش عالی شما سپاسگزارم.
1401-01-10
دم شما گرم واقعا دکتر تابش عالیه
امیر خان 1400-12-13
ممنون بابت همچین دوره بی نظیری اسلایدای درس و ازکجا میتونم دانلود کنم؟
مکتب‌خونه
همراه عزیز؛ در صورت وجود و ارائه فایل مورد نیاز توسط استاد، در دوره بارگذاری شده است در غیر این صورت فایلی ارائه نشده.
مهدی اصلانی 1400-11-23
از دکتر گنج تابش و تیم مکتبخونه بسیار سپاسگزارم. وجود چنین دوره های با کیفیتی قطعا باعث پیشرفت خیلی از دانشجویان در اقصی نقاط کشور خواهد شد.
طارق نیسی 1400-09-18
میتونیه جالب باشه
امیر سوکی 1400-09-17
بی نظیر
پیمان شعبانی 1400-09-16
دکتر تابش عالیه. ممنون از ایشون بابت این دوره ی بسیار عالی
1
2

دوره‌های پیشنهادی

سوالات پرتکرار

آیا ممکن است که درسی ناقص ضبط شده باشد؟
ما همواره تلاش کرده­‌ایم که دروس را به طور کامل ضبط نماییم و در اختیار شما دوستان قرار دهیم. اما گاهی برخی ناهماهنگی ها سبب می شود که یک یا تعدادی از جلسات یک درس ضبط نشود. توضیح این گونه نواقص در توضیح درس­ ها آمده است.

سوالات پرتکرار

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

سوالات پرتکرار

آیا امکان دریافت فیلم های یک درس به صورت سی دی یا دی وی دی وجود دارد؟
در حال حاضر امکان ارسال دروس به صورت سی دی یا دی وی دی وجود ندارد.
poster
  
برگزار کننده:  دانشگاه تهران
  
زمان مورد نیاز برای گذارندن دوره:  78 جلسه
مجموع محتوای آموزشی:  49 ساعت ویدئو
 (قابل دانلود می‌باشد)
  
امتیاز شما:  0 %