آموزش تحلیل پیچیدگی زمان و مکان (نشانگذاری Big-O)

Time and space complexity analysis (big-O notation)

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

با تحلیل پیچیدگی زمان و مکان مشکل دارید؟ نگران نباشید، برای گذراندن یک دوره دقیق در مورد تجزیه و تحلیل پیچیدگی زمان و مکان آماده شوید که به شما می آموزد چگونه پیچیدگی زمانی و مکانی یک الگوریتم را تجزیه و تحلیل کنید، مهارت مهمی که در علوم کامپیوتر و برنامه نویسی رقابتی باید داشته باشید!

این دوره شامل تئوری و عمل است، تئوری برای به دست آوردن تمام دانش لازم در مورد تجزیه و تحلیل پیچیدگی (نمادگذاری ها، موارد ورودی، پیچیدگی مستهلک شده، تجزیه و تحلیل پیچیدگی ساختارهای داده...) و تمرین برای استفاده از آن دانش برای تجزیه و تحلیل پیچیدگی زمانی و مکانی الگوریتم های مختلف!

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

ساعت ها و ساعت ها تحقیق، نوشتن، متحرک سازی و ضبط، برای ارائه این دوره شگفت انگیز، آن را از دست ندهید!

این دوره شامل موارد زیر خواهد بود:

  • اصول تجزیه و تحلیل پیچیدگی

  • نمادهای Big-O، big-Omega و big-Theta

  • بهترین، متوسط، و بدترین حالت

  • سلسله مراتب پیچیدگی ها

  • کلاس های پیچیدگی (مسئله P در مقابل NP)

  • نحوه تجزیه و تحلیل پیچیدگی زمانی و مکانی یک الگوریتم

  • نحوه مقایسه کارایی الگوریتم ها

  • تحلیل پیچیدگی مستهلک شده

  • تحلیل پیچیدگی الگوریتم‌های جستجو

  • تحلیل پیچیدگی الگوریتم‌های مرتب‌سازی

  • تحلیل پیچیدگی توابع بازگشتی

  • تحلیل پیچیدگی عملیات اصلی ساختار داده

  • اشتباهات رایج و باورهای غلط

  • تحلیل پیچیدگی برخی از مشکلات رایج کدگذاری مصاحبه

امیدوارم شما را در دوره ببینم!


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

مبانی تحلیل پیچیدگی Complexity analysis basics

  • معرفی Introduction

  • مثال ها Examples

  • نمادهای Big-O، big-Ω و big-θ Big-O, big-Ω, and big-θ notations

  • منبع اضافی: نمادها تعریف ریاضی Extra resource: Notations mathematical definition

  • مسابقه: نمادهای Big-O، big-Ω و big-θ Quiz: Big-O, big-Ω, and big-θ notations

  • بهترین، متوسط ​​و بدترین حالت Best, average, and worst case

  • کلاس های پیچیدگی Complexity classes

نحوه تجزیه و تحلیل پیچیدگی یک الگوریتم How to analyze the complexity of an algorithm

  • سلسله مراتب پیچیدگی ها Complexities hierarchy

  • امتحان: پیچیدگی را تجزیه و تحلیل کنید Quiz: Analyze the complexity

  • نحوه تجزیه و تحلیل پیچیدگی یک الگوریتم How to analyze the complexity of an algorithm

  • آزمون: پیچیدگی را از T(n) استنتاج کنید Quiz: Deduce the complexity from T(n)

  • پیچیدگی مستهلک شده Amortized complexity

  • نحوه مقایسه دو الگوریتم How to compare two algorithms

  • تجزیه و تحلیل مسئله "جفتی را پیدا کنید که جمع آن k باشد". "Find pair that sums up to k" problem analysis

الگوریتم های جستجو و تحلیل پیچیدگی Searching algorithms and complexity analysis

  • الگوریتم جستجوی خطی Linear search algorithm

  • الگوریتم جستجوی باینری Binary search algorithm

  • الگوریتم Knuth-Morris-Pratt (KMP). Knuth-Morris-Pratt (KMP) algorithm

الگوریتم های مرتب سازی و تحلیل پیچیدگی Sorting algorithms and complexity analysis

  • معرفی Introduction

  • مرتب سازی درج Insertion sort

  • مرتب سازی حبابی Bubble sort

  • مرتب سازی انتخابی Selection sort

  • مرتب سازی ادغام Merge sort

  • Heapsort Heapsort

  • مرتب سازی سریع Quicksort

  • مرتب سازی شمارش Counting sort

  • مرتب سازی رادیکس Radix sort

  • مرتب سازی سطلی Bucket sort

  • مرتب سازی پوسته Shell sort

  • منبع اضافی: خلاصه Extra resource: Summary

توابع بازگشتی و تحلیل پیچیدگی Recursive functions and complexity analysis

  • معرفی Introduction

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

  • روش رابطه عود Recurrence relation method

  • روش قضیه استاد Master theorem method

  • تحلیل پیچیدگی فضایی توابع بازگشتی Space complexity analysis of recursive functions

  • حفظ کردن Memoization

  • برنامه نویسی پویا Dynamic programming

ساختار داده ها و تحلیل پیچیدگی Data structures and complexity analysis

  • آرایه ها Arrays

  • لیست ها، پشته ها و صف های مرتبط Linked lists, stacks, and queues

  • جداول و ست ها هش کنید Hash tables and sets

  • درختان Trees

  • اثبات ریاضی پیچیدگی زمانی ساخت یک پشته باینری Mathematical proof of time complexity of building a binary heap

  • نمودارها Graphs

  • منبع اضافی: خلاصه Extra resource: Summary

اشتباهات رایج و باورهای غلط Common mistakes and misconceptions

  • حلقه های تو در تو == O(n²)؟ Nested loops == O(n²)?

  • اشتباهات رایج Common mistakes

  • آیا همیشه نیاز به بهینه سازی داریم؟ Do we always need to optimize?

تمرین: تجزیه و تحلیل پیچیدگی راه حل مشکلات مصاحبه کدنویسی محبوب Practice: complexity analysis of popular coding interview problems solutions

  • امتحان: پیچیدگی مسئله "اولین شخصیت تکرار شونده" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "First repeating character" problem

  • اولین شخصیت تکراری First repeating character

  • آزمون: پیچیدگی مسئله "حداکثر زیرآرایه" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Maximum subarray" problem

  • حداکثر زیرآرایه Maximum subarray

  • امتحان: پیچیدگی مسئله "پیک یابی" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Peak finding" problem

  • اوج یابی Peak finding

  • امتحان: پیچیدگی مشکل "لیست پیوند شده پالیندروم" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Palindrome linked list" problem

  • فهرست پیوندی پالیندروم Palindrome linked list

  • امتحان: پیچیدگی مسئله "زیر دنباله های رشته" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "String subsequences" problem

  • دنباله های رشته ای String subsequences

  • آزمون: پیچیدگی مسئله "مسیر حداقل هزینه" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Minimum cost path" problem

  • مسیر حداقل هزینه Minimum cost path

  • امتحان: پیچیدگی مسئله "طولانی ترین دنباله متوالی" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Longest consecutive sequence" problem

  • طولانی ترین سکانس متوالی Longest consecutive sequence

  • امتحان: پیچیدگی مسئله "طولانی ترین دنباله مشترک" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Longest common subsequence" problem

  • طولانی ترین دنباله متداول Longest common subsequence

  • امتحان: پیچیدگی مسئله "زیر مجموعه هایی که به k جمع می شوند" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Subsets that sum up to k" problem

  • زیرمجموعه هایی که جمع آنها k می شود Subsets that sum up to k

  • امتحان: پیچیدگی مسئله "درخت باینری متعادل" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Balanced binary tree" problem

  • درخت باینری متعادل Balanced binary tree

  • امتحان: پیچیدگی مسئله "جایگشت آرایه" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Array permutations" problem

  • جایگشت آرایه ها Array permutations

  • امتحان: پیچیدگی مشکل "جستجوی کلمه" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "Word search" problem

  • جستجوی کلمه Word search

  • امتحان: پیچیدگی مسئله "N-queens" را تجزیه و تحلیل کنید Quiz: Analyze the complexity of "N-queens" problem

  • N-ملکه ها N-queens

  • امتیاز: برنامه نویسی پویا بهینه شده برای فضا Bonus: space-optimized dynamic programming

نمایش نظرات

آموزش تحلیل پیچیدگی زمان و مکان (نشانگذاری Big-O)
جزییات دوره
7.5 hours
57
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,667
4.5 از 5
دارد
دارد
دارد
Inside Code
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Inside Code Inside Code

سازنده محتوا