آموزش بازگشت (Recursion) - آخرین آپدیت

دانلود Recursion

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

دوره جامع بازگشت (Recursion) برای تسلط کامل و رفع ترس

با این دوره جامع، بازگشت (Recursion) را به طور کامل بیاموزید و دیگر از آن نترسید! این دوره تمام آنچه را که برای درک عمیق و استفاده مؤثر از بازگشت نیاز دارید را پوشش می‌دهد.

مباحث کلیدی دوره بازگشت:

  • مفهوم بازگشت (What is recursion)
  • فرایند بازگشتی (Recursive process)
  • بهینه‌سازی توابع بازگشتی (Optimizing a recursive function) با استفاده از روش‌های Memoization و برنامه‌نویسی پویا (Dynamic Programming)
  • تکنیک‌های الگوریتمی مبتنی بر بازگشت: تقسیم و حل (Divide and Conquer) و پس‌گرد (Backtracking)
  • بازگشت دُمی (Tail recursion)
  • شکستن مسئله به زیرمسائل هم‌نوع
  • کد و اجرای بازگشت (Code and execution)
  • شرایط پایه و شرایط بازگشتی (Base cases and recursive cases)
  • فرایند فراخوانی‌های بازگشتی متعدد (Multiple recursive calls process)
  • پشته فراخوانی (Call stack)
  • درخت بازگشت (Recursion tree)
  • نحوه بصری‌سازی فرایند بازگشت (How to visualize the process)
  • تحلیل پیچیدگی توابع بازگشتی (Complexity analysis - time and space)
  • مقایسه بازگشت با پیمایش تکراری (Recursion vs Iteration)
  • ساختارهای داده بازگشتی (Recursive data structures)
  • بازگشت دوگانه (Double recursion)
  • چگونه به صورت بازگشتی فکر کنیم (How to think recursively)

پیش‌نیازها:

  • دانش پایه برنامه‌نویسی (Basic programming knowledge)

هشدار:

توجه: در حال حاضر مدرس قادر به پاسخگویی به سؤالات این دوره نیست.

چرا این دوره را بگذرانید؟

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

یادگیری بازگشت به شما دیدگاهی نو در حل مسائل می‌دهد: تقسیم مسائل پیچیده به نمونه‌های کوچکتر و مشابه. این مهارت برای درک تکنیک‌های پیشرفته‌تری مانند برنامه‌نویسی پویا (Dynamic Programming) و پس‌گرد (Backtracking) ضروری است.

این دوره شامل ۱۱ مسئله کدنویسی حل شده و توضیح داده شده برای تمرین بیشتر است.

۱۱ مسئله کدنویسی برای تمرین:

  • محاسبه مجموع ارقام (Sum of digits)
  • شمارش تعداد وقوع (Count occurrences)
  • بررسی وجود ارقام تکراری مجاور (Has adjacent duplicates)
  • معکوس کردن رشته (Reverse string)
  • کوتاه‌ترین مسیر در ماتریس (Minimum cost path in matrix)
  • همه عبارات ممکن (All possible phrases)
  • ترکیبات صفحه کلید (Keypad combinations)
  • زیررشته‌های رشته (String subsequences)
  • اعداد دودویی با حداکثر ۲ صفر (Binary numbers with at most 2 zeros)
  • جستجوی کلمه (Word search)
  • جایگشت‌های آرایه (Array permutations)

مزایای اصلی دوره:

  • توضیحات دقیق از نحوه کار فرایند بازگشتی
  • مثال‌های بصری و متحرک
  • کیفیت صدای و تصویر بالا
  • زیرنویس واقعی انگلیسی
  • شامل مسائل کدنویسی برای تمرین عملی
  • امکان پرسیدن سؤال در صورت بروز هرگونه ابهام (لطفا به هشدار بالا توجه کنید)

شما را در اولین جلسه آموزشی خواهم دید!


سرفصل ها و درس ها

مقدمه Introduction

  • بازگشت چیست؟ What is recursion?

  • کد و اجرا Code and execution

  • حالات پایه و حالات بازگشتی Base cases and recursive cases

فراخوانی‌های بازگشتی متعدد Multiple recursive calls

  • توضیح فرآیند Process explanation

  • درخت بازگشتی Recursion tree

تصویرسازی پشته فراخوانی و درخت بازگشتی Visualize call stack and recursion tree

  • تصویرسازی پشته فراخوانی Visualize call stack

  • تصویرسازی درخت بازگشتی Visualize recursion tree

تحلیل پیچیدگی زمانی و فضایی توابع بازگشتی Time and space complexity analysis of recursive functions

  • بازگشت و پیچیدگی زمانی/فضایی Recursion and time/space complexity

  • روش درخت بازگشتی Recursion tree method

  • روش رابطه بازگشتی Recurrence relation method

  • روش قضیه اصلی Master theorem method

  • پیچیدگی فضایی الگوریتم بازگشتی Space complexity of a recursive algorithm

بازگشت در مقابل تکرار Recursion vs Iteration

  • مقایسه The comparison

  • از بازگشت به تکرار From recursion to iteration

  • از تکرار به بازگشت From iteration to recursion

بهینه‌سازی تابع بازگشتی با حافظه‌سازی و برنامه‌نویسی پویا Optimize a recursive function with memoization and dynamic programming

  • حافظه‌سازی چیست؟ What is memoization

  • بهینه‌سازی راه‌حل "راه‌های بالا رفتن از پله‌ها" با حافظه‌سازی Optimize "ways to climb stairs" solution with memoization

  • برنامه‌نویسی پویا چیست؟ What is dynamic programming

  • بهینه‌سازی راه‌حل "راه‌های بالا رفتن از پله‌ها" با برنامه‌نویسی پویا Optimize "ways to climb stairs" solution with dynamic programming

تقسیم و حل و عقب‌گرد Divide-and-conquer and backtracking

  • تقسیم و حل چیست؟ What is divide-and-conquer

  • عقب‌گرد چیست؟ What is backtracking

  • مسئله N-ملکه N-queens problem

ساختارهای داده بازگشتی Recursive data structures

  • بازگشت و لیست‌های پیوندی Recursion and linked lists

  • بازگشت و درخت‌ها Recursion and trees

  • بازگشت و گراف‌ها Recursion and graphs

بازگشت دُم (Tail Recursion) Tail recursion

  • بازگشت دُم چیست؟ What is tail recursion

  • مثال‌ها Examples

بازگشت دوگانه Double recursion

  • بازگشت دوگانه چیست؟ What is double recursion

چگونه بازگشتی فکر کنیم How to think recursively

  • چگونه بازگشتی فکر کنیم How to think recursively

مسئله کدنویسی شماره ۱: مسئله جمع ارقام Coding problem #1: Sum of digits problem

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۲: شمارش تعداد وقوع Coding problem #2: Count occurrences

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۳: مسئله وجود ارقام تکراری مجاور Coding problem #3: Has adjacent duplicates problem

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۴: معکوس کردن رشته Coding problem #4: Reverse string

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۵: کم‌هزینه‌ترین مسیر در ماتریس Coding problem #5: Minimum cost path in matrix

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۶: تمام عبارات ممکن Coding problem #6: All possible phrases

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

  • نکته مهم Important note

مسئله کدنویسی شماره ۷: ترکیب‌های صفحه کلید Coding problem #7: Keypad combinations

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

  • نکته مهم Important note

مسئله کدنویسی شماره ۸: زیررشته‌های رشته Coding problem #8: String subsequences

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۹: اعداد باینری با حداکثر ۲ صفر Coding problem #9: Binary numbers with at most 2 zeros

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

  • نکته مهم Important note

مسئله کدنویسی شماره ۱۰: جستجوی کلمه Coding problem #10: Word search

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

مسئله کدنویسی شماره ۱۱: جایگشت‌های آرایه Coding problem #11: Array permutations

  • حل مسئله Solve the problem

  • راه‌حل + کد Solution + code

نتیجه‌گیری Conclusion

  • نتیجه‌گیری Conclusion

نمایش نظرات

آموزش بازگشت (Recursion)
جزییات دوره
5 hours
44
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,505
4.5 از 5
دارد
دارد
دارد
Inside Code
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Inside Code Inside Code

سازنده محتوا