آموزش 40 روز کد ساختارهای داده و الگوریتم‌های PYTHON LEETCODE

40 Days of Code PYTHON Data Structures & Algorithms LEETCODE

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: برنامه نویسی پویا، عقب نشینی، ساختارهای داده، BigO، الگوهای سوال، توضیحات عمیق. شغل مورد نظر خود را بدست آورید! برنامه نویسی پویا، تکنیک های عقبگرد ساختارهای داده رایج مانند آرایه ها، جدول هش، لیست پیوندی، درختان باینری، نمودارها و غیره. پیچیدگی زمانی و مکانی الگوریتم ها، بحث مفصل منطق برای حل سوالات کدنویسی واقعی سوالات مصاحبه از گوگل، متا، آمازون، نتفلیکس ، مایکروسافت و غیره. مهارت های حل مسئله خود را تقویت کنید پیش نیازها: دانش پایه پایتون (چیزهایی مانند نوشتن یک حلقه، تابع و غیره) بدون نیاز به تجربه با ساختار داده یا الگوریتم

درباره دوره:

به بوت کمپ مصاحبه کدنویسی الگوریتم ها و ساختارهای داده با پایتون خوش آمدید!

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

چالش های کدنویسی روزانه:

این دوره بر اساس چالش‌های کدنویسی روزانه طراحی شده است. تمرین مداوم شما را به مهارت های مورد نیاز برای مصاحبه های کدنویسی ACE مجهز می کند. برای 40 روز آینده خود را متعهد کنید که هر روز حداقل 2 سوال مصاحبه کدنویسی را تمرین کنید. برای این کار نیازی به تنظیمات ندارید زیرا چالش های مشکل کدنویسی روزانه را می توان در محیط کدنویسی ارائه شده توسط Udemy حل کرد. این دوره به طور خودکار پیشرفت شما را ردیابی می کند و شما فقط باید زمان خود را صرف پیشرفت واقعی کنید.

موضوعات تحت پوشش:

از اصول اولیه با تجزیه و تحلیل Big O شروع می کنیم، سپس به تکنیک های الگوریتمی بسیار مهم مانند Recursion، Backtracking و Dynamic Programming Patters می رویم. پس از این به بررسی ساختارهای داده رایج می‌پردازیم و مشکلات واقعی را که در مصاحبه‌های غول‌های فناوری مانند گوگل، متا، آمازون، نتفلیکس، اپل و مایکروسافت پرسیده می‌شود، مورد بحث قرار می‌دهیم.

برای هر سوال، ما این موارد را انجام می دهیم:

  1. رویکرد بهینه را مورد بحث قرار دهید

  2. پیچیدگی زمان و مکان را توضیح دهید

  3. راه حل را در پایتون کدنویسی کنید (می توانید به زبان دلخواه خود را دنبال کنید)

منابع اضافی:

این دوره شامل منابع قابل دانلود، ردیاب های انگیزشی، و برگه های تقلب است.

طرح کلی دوره:


  • روز 1: آرایه ها، O بزرگ، آرایه مربعی مرتب شده، آرایه یکنواخت

  • روز 2: بازگشت، نماد k-ام در گرامر، مسئله جوزفوس

  • روز 3: بازگشت، برج هانوی، جمع قدرت

  • روز 4: عقبگرد، جایگشت، جایگشت 2

  • روز 5: عقبگرد، زیرمجموعه، زیرمجموعه 2

  • روز 6: عقبگرد، ترکیبات، مجموع ترکیبات 1

  • روز 7: عقبگرد، مجموع ترکیبات 2، مجموع ترکیبات 3

  • روز 8: عقبگرد، حل سودوکو، N Queens

  • روز نهم: برنامه نویسی پویا، فیبوناچی، بالا رفتن از پله ها

  • روز 10: برنامه نویسی پویا، حداقل هزینه بالا رفتن از پله ها، تربوناچی

  • روز 11: برنامه نویسی پویا، 01 کوله پشتی، کوله پشتی نامحدود

  • روز دوازدهم: برنامه نویسی پویا، جمع هدف، مجموع زیر مجموعه برابر پارتیشن

  • روز 13: برنامه نویسی پویا، LCS، ویرایش فاصله

  • روز چهاردهم: برنامه نویسی پویا، LIS، حداکثر طول زنجیره جفت، پاکت عروسک روسی

  • روز 15: برنامه نویسی پویا، زیر رشته های پالیندرومیک، طولانی ترین زیر رشته پالیندرومیک، طولانی ترین زیر رشته پالیندرومیک

  • روز شانزدهم: برنامه نویسی پویا، پارتیشن بندی پالیندروم، پارتیشن بندی پالیندروم 2

  • روز هفدهم: برنامه نویسی پویا، شکست کلمه، ضرب زنجیره ماتریس

  • روز هجدهم: برنامه نویسی پویا، الگوریتم Kadane - Max Subarray، Maximum Product Subray

  • روز 19: آرایه‌ها، چرخش آرایه، ظرف با بیشترین آب

  • روز 20: جداول هش، دو جمع، رشته های هم شکل

  • روز 21: زهی، کاراکتر غیر تکراری، پالیندروم

  • روز 22: رشته ها، طولانی ترین زیر رشته منحصر به فرد، آناگرام های گروهی

  • روز 23: جستجو، جستجوی باینری، جستجو در آرایه مرتب شده چرخشی

  • روز 24: جستجو، یافتن اولین و آخرین موقعیت، جستجو در آرایه دو بعدی

  • روز 25: مرتب‌سازی، مرتب‌سازی حبابی، مرتب‌سازی درج

  • روز 26: مرتب‌سازی، مرتب‌سازی انتخابی، مرتب‌سازی ادغام

  • روز 27: مرتب‌سازی، مرتب‌سازی سریع، مرتب‌سازی ریشه

  • روز 28: فهرست‌های پیوندی منفرد، ساخت SLL، حذف موارد تکراری

  • روز 29: فهرست‌های پیوندی واحد، SLL معکوس، تشخیص چرخه

  • روز 30: فهرست‌های پیوندی تکی، یافتن تکراری، افزودن 2 عدد

  • روز 31: لیست‌های پیوند شده دوگانه، حذف DLL درج، DLL حذف همه

  • روز 32 : پشته، ساخت پشته، نماد لهستانی معکوس

  • روز 33: صف، ساخت صف، اجرای صف با پشته

  • روز 34: درختان باینری، ساخت BST، تکنیک‌های پیمایش

  • روز 35: درختان باینری، پیمایش ترتیب سطح، نمای چپ/راست

  • روز 36: درختان دوتایی، درخت معکوس، قطر درخت

  • روز 37: درختان باینری، تبدیل آرایه مرتب شده به BST، اعتبارسنجی BST

  • روز 38: هیپ، حداکثر هیپ، صف اولویت حداقل

  • روز 39: نمودارها، BFS، DFS

  • روز 40: نمودارها، تعداد مؤلفه‌های متصل، مرتب‌سازی توپولوژیک

اعتماد من به رضایت شما از این دوره آنقدر بالاست که 30 روز ضمانت بازگشت وجه کامل ارائه می دهیم! بنابراین، این یک فرصت کاملاً بدون ریسک است. امروز ثبت نام کنید، با خطر صفر روبرو هستید و برای به دست آوردن همه چیز ایستاده اید.

پس منتظر چه چیزی هستید؟ به بهترین بوت کمپ الگوریتم های ساختارهای داده پایتون در Udemy بپیوندید.

من مشتاق دیدن شما در دوره هستم.

بیایید کارها را شروع کنیم! :-)

جکسون


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

روز 1: آرایه‌ها و ساختارهای داده و الگوریتم‌ها Day 1: Arrays Data Structures and Algorithms

  • آنچه می خواهید از این دوره به دست آورید What you're going to get from this course

  • خوش آمدی! نحوه استفاده بهینه از این دوره (لطفا تماشا کنید) Welcome! How to make best use of this course (Please Watch)

  • اهداف روز اول Day 1 Goals

  • مقدمه ای بر ساختارهای داده Introduction to Data Structures

  • مقدمه ای بر Big O، پیچیدگی زمانی Introduction to Big O, Time Complexity

  • 2 تجزیه و تحلیل مجانبی و O بزرگ 2 Asymptotic Analysis and Big O

  • پیچیدگی فضای بزرگ O Big O Space Complexity

  • بیگ ای لگاریتم Big O Logarithm

  • Arrays: Data Structures Crash Course Arrays: Data Structures Crash Course

  • امتحان: آرایه ها Quiz: Arrays

  • تمرین های کدگذاری CODING EXERCISES

  • کدگذاری مصاحبه Q1 (آسان): آرایه مربعی مرتب شده CODING INTERVIEW Q1 (Easy): Sorted Squared Array

  • تمرین کدنویسی: آرایه مربعی مرتب شده Coding Exercise: Sorted Squared Array

  • روش 1، تجزیه و تحلیل O بزرگ Method 1, Big O Analysis

  • کد پایتون - روش 1 Python Code - Method 1

  • روش 2 Method 2

  • کد پایتون - روش 2 Python Code - Method 2

  • کدگذاری مصاحبه Q2 (آسان): آرایه یکنواخت CODING INTERVIEW Q2 (Easy): Monotonic Array

  • تمرین کدگذاری: آرایه یکنواخت Coding Exercise: Monotonic Array

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون - آرایه یکنواخت Python Code - Monotonic Array

روز 2: بازگشت Day 2: Recursion

  • اهداف روز دوم Day 2 Goals

  • مبانی بازگشت Recursion Basics

  • جهش بازگشتی ایمان Recursive Leap of Faith

  • تجسم بازگشت Visualising Recursion

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

  • روش های نوشتن شرط پایه Ways to write Base condition

  • رابطه عود Recurrence relation

  • چگونه سوالات بازگشتی را حل کنیم How to Solve Recursion Questions

  • رویکردهای بازگشتی - 0 تا N و N تا 0 Recursion Approaches - 0 to N and N to 0

  • بازگشت همه جا هست Recursion is everywhere

  • تجزیه و تحلیل پیچیدگی راه حل های بازگشتی Complexity Analysis of Recursive Solutions

  • امتحان: بازگشت Quiz: Recursion

  • کدگذاری سوال مصاحبه (متوسط): نماد k-ام در گرامر CODING INTERVIEW QUESTION (Medium): k-th symbol in Grammar

  • تمرین کدگذاری (کمین نماد در گرامر) Coding Exercise (k-th symbol in Grammar)

  • رویکرد (کمین نماد در گرامر) Approach(k-th symbol in Grammar)

  • شبه کد (نماد k-امین در گرامر) Pseudocode (k-th symbol in Grammar)

  • کد پایتون Python Code

  • تجزیه و تحلیل پیچیدگی (کمین نماد در گرامر) Complexity Analysis(k-th symbol in Grammar)

  • حل پایتون (کمین نماد در گرامر) Python Solution (k-th symbol in Grammar)

  • سوال مصاحبه کدگذاری (متوسط): مسئله جوزفوس CODING INTERVIEW QUESTION (Medium): Josephus problem

  • تمرین کدنویسی: مسئله جوزفوس Coding Exercise: Josephus problem

  • رویکرد 1 Approach 1

  • شبه کد Pseudocode

  • تحلیل پیچیدگی Complexity Analysis

  • راه حل پایتون 1: مسئله جوزفوس روش 1 Python Solution 1: Josephus problem Method 1

  • رویکرد 2 Approach 2

  • شبه کد Pseudocode

  • تحلیل پیچیدگی Complexity Analysis

  • راه حل پایتون 2: مسئله جوزفوس روش 2 Python Solution 2 : Josephus problem Method 2

  • رویکرد 3 Approach 3

  • تحلیل پیچیدگی Complexity Analysis

  • راه حل 3 پایتون: مسئله جوزفوس روش 3 Python Solution 3 : Josephus problem Method 3

روز 3: بازگشت ادامه دارد Day 3: Recursion Continued

  • اهداف روز سوم Day 3 Goals

  • کدگذاری سوال مصاحبه (متوسط): برج هانوی CODING INTERVIEW QUESTION (Medium): Tower of Hanoi

  • تمرین کدنویسی (برج هانوی) Coding Exercise(Tower of Hanoi)

  • شناسایی اینکه wew می تواند از Recursion استفاده کند Identifying that wew can use Recursion

  • رویکرد Approach

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

  • راه حل پایتون: برج هانوی Python Solution : Tower of Hanoi

  • تجزیه و تحلیل پیچیدگی: برج هانوی Complexity Analysis : Tower of Hanoi

  • کدگذاری سوال مصاحبه (متوسط): مجموع توان CODING INTERVIEW QUESTION(Medium): Power Sum

  • تمرین کدگذاری: جمع قدرت Coding Exercise: Power Sum

  • روش و تجزیه و تحلیل O بزرگ Method and Big O Analysis

  • راه حل پایتون: جمع توان Python Solution: Power Sum

روز چهارم: عقب نشینی Day 4: Backtracking

  • اهداف روز چهارم Day 4 Goals

  • Backtracking چیست What is Backtracking

  • چه تفاوتی با Recursion دارد؟ How is it different from Recursion ?

  • Backtracking چگونه کار می کند؟ How does Backtracking work ?

  • عبور با مرجع/تغییر در محل Pass by reference / change inplace

  • طرحی برای حل سوالات با استفاده از Backtracking Blueprint to solve questions using Backtracking

  • زمان استفاده از Backtracking را مشخص کنید Identify when to use Backtracking

  • امتحان: عقب نشینی Quiz: Backtracking

  • کدگذاری سوال مصاحبه (متوسط): جایگشت CODING INTERVIEW QUESTION (Medium): Permutations

  • تمرین کدنویسی (جایگشت) Coding Exercise ( Permutations)

  • رویکرد Approach

  • شبه کد Pseudocode

  • راه حل پایتون: جایگشت ها Python Solution : Permutations

  • تحلیل پیچیدگی Complexity Analysis

  • کدگذاری سوال مصاحبه (متوسط): جایگشت 2 CODING INTERVIEW QUESTION(Medium): Permutations 2

  • جایگشت 2 Permutations 2

  • رویکرد Approach

  • شبه کد Pseudocode

  • کد پایتون: جایگشت 2 Python Code: Permutations 2

  • تجزیه و تحلیل پیچیدگی: جایگشت 2 Complexity Analysis : Permutations 2

روز پنجم: عقب نشینی Day 5: Backtracking

  • اهداف روز پنجم Day 5 Goals

  • کدگذاری سوال مصاحبه (متوسط): زیر مجموعه ها CODING INTERVIEW QUESTION(Medium): Subsets

  • زیر مجموعه ها Subsets

  • روش Method

  • زیرمجموعه ها - مقایسه با طرح پشتیبان Subsets - Comparison with Backtracking Blueprint

  • زیر مجموعه ها - تحلیل پیچیدگی Subsets - Complexity Analysis

  • کد پایتون - زیر مجموعه ها Python Code - Subsets

  • کدگذاری سوال مصاحبه (متوسط): زیر مجموعه 2 CODING INTERVIEW QUESTION(Medium): Subsets 2

  • تمرین کدگذاری: زیرمجموعه 2 Coding Exercise: Subsets 2

  • رویکرد Approach

  • کد پایتون: زیرمجموعه 2 Python Code: Subsets 2

  • زیر مجموعه 2: تحلیل پیچیدگی Subsets 2: Complexity Analysis

روز ششم: عقبگرد Day 6: Backtracking

  • اهداف روز ششم Day 6 Goals

  • کدگذاری سوال مصاحبه (متوسط): ترکیبات CODING INTERVIEW QUESTION(Medium): Combinations

  • تمرین کدگذاری: ترکیبات Coding Exercise: Combinations

  • رویکرد Approach

  • ترکیبات: تجزیه و تحلیل پیچیدگی Combinations : Complexity Analysis

  • کد پایتون: ترکیبات Python Code : Combinations

  • ترکیبات: بهینه سازی Combinations: Optimisation

  • کد پایتون: ترکیب با بهینه سازی Python Code: Combinations with Optimisation

  • کدگذاری سوال مصاحبه (متوسط): مجموع ترکیبات 1 CODING INTERVIEW QUESTION ( Medium) : Combinations Sum 1

  • مجموع ترکیبات 1 Combinations Sum 1

روز هفتم: عقب نشینی Day 7: Backtracking

  • اهداف روز هفتم Day 7 Goals

  • کدگذاری سوال مصاحبه (متوسط): مجموع ترکیبات 2 CODING INTERVIEW QUESTION (Medium): Combinations Sum 2

  • تمرین کدگذاری: مجموع ترکیبات 2 Coding Exercise: Combinations Sum 2

  • کدگذاری سوال مصاحبه (متوسط) : مجموع ترکیبات 3 CODING INTERVIEW QUESTION ( Medium) : Combinations Sum 3

  • تمرین کدگذاری: مجموع ترکیبات 3 Coding Exercise: Combinations Sum 3

روز هشتم: عقب نشینی Day 8: Backtracking

  • اهداف روز هشتم Day 8 Goals

  • کدگذاری سوال مصاحبه (سخت): حل سودوکو CODING INTERVIEW QUESTION(Hard) : Sudoku Solver

  • حل کننده سودوکو Sudoku Solver

  • رویکرد Approach

  • شبه کد Pseudocode

  • برای حل سودوکو چک معتبر است isValid check for Sudoku Solver

  • کد پایتون: حل کننده سودوکو Python Code : Sudoku Solver

  • تحلیل پیچیدگی Complexity Analysis

  • رویکرد دیگر - حل سودوکو (کد پایتون) Another approach - Sudoku Solver ( Python Code)

  • کدگذاری سوال مصاحبه (سخت): N ملکه CODING INTERVIEW QUESTION(Hard): N Queen

  • تمرین کدنویسی: N Queen Coding Exercise: N Queen

  • رویکرد Approach

  • شبه کد Pseudocode

  • کد پایتون: N Queen Python Code: N Queen

  • تحلیل پیچیدگی Complexity Analysis

روز نهم: برنامه نویسی پویا Day 9: Dynamic Programming

  • اهداف روز نهم Day 9 Goals

  • مقدمه ای بر برنامه نویسی پویا (DP) Introduction to Dynamic Programming (DP)

  • برنامه نویسی پویا - الگوها Dynamic Programming - Patterns

  • رویکردی برای حل سوالات DP (برنامه نویسی پویا). Approach to solve DP(Dynamic Programming) Questions

  • چرا نوشتن راه حل بازگشتی به نوشتن رویکرد پایین به بالا کمک می کند Why writing the Recursive solution helps to write the Bottom up approach

  • شناسایی سوالات برنامه نویسی پویا Identifying Dynamic Programming Questions

  • آزمون: برنامه نویسی پویا Quiz: Dynamic Programming

  • کدگذاری سوال مصاحبه (آسان): فیبوناچی CODING INTERVIEW QUESTION(Easy): Fibonacci

  • تمرین کدگذاری: فیبوناچی Coding Exercise: Fibonacci

  • رویکردها Approaches

  • رویکرد 1: بازگشت Approach 1: Recursion

  • تحلیل پیچیدگی: رویکرد 1 - بازگشت Complexity Analysis: Approach 1 - Recursion

  • کد پایتون - بازگشت Python Code - Recursion

  • رویکرد 2: حفظ کردن Approach 2: Memoization

  • تجزیه و تحلیل پیچیدگی: رویکرد 2 - یادداشت Complexity Analysis : Approach 2 - Memoization

  • کد پایتون: رویکرد 2 - یادداشت Python Code: Approach 2 - Memoization

  • رویکرد 3: جدول بندی Approach 3: Tabulation

  • تحلیل پیچیدگی: رویکرد 3 - جدول بندی Complexity Analysis: Approach 3 - Tabulation

  • کد پایتون: رویکرد 3 - جدول بندی Python Code: Approach 3 - Tabulation

  • رویکرد 4: جدول بندی فضای بهینه + تجزیه و تحلیل پیچیدگی Approach 4: Space Optimised Tabulation + Complexity Analysis

  • کد پایتون: رویکرد 4 - جدول بندی بهینه شده فضایی + تجزیه و تحلیل پیچیدگی Python Code: Approach 4 -Space Optimised Tabulation + Complexity Analysis

  • کدگذاری سوال مصاحبه (آسان): بالا رفتن از پله CODING INTERVIEW QUESTION(Easy): Climbing Stairs

  • تمرین کدنویسی: بالا رفتن از پله Coding Exercise: Climbing Stairs

روز دهم: نوع برنامه نویسی پویا - فیبوناچی Day 10: Dynamic Programming Type - Fibonacci

  • گل های روز دهم Day 10 Goals

  • کدگذاری سوال مصاحبه (آسان): حداقل هزینه بالا رفتن از پله ها CODING INTERVIEW QUESTION(Easy): Min Cost Climbing Stairs

  • تمرین کدنویسی: حداقل هزینه بالا رفتن از پله Coding Exercise: Minimum Cost Climbing Stairs

  • کدگذاری سوال مصاحبه (آسان): تربوناچی CODING INTERVIEW QUESTION(Easy): Tribonacci

  • تمرین کدگذاری: تربوناچی Coding Exercise: Tribonacci

روز یازدهم: نوع برنامه نویسی پویا - کوله پشتی Day 11: Dynamic Programming Type - Knapsack

  • گل های روز یازدهم Day 11 Goals

  • کدگذاری سوال مصاحبه (متوسط): 0/1 کوله پشتی CODING INTERVIEW QUESTION(Medium): 0/1 Knapsack

  • تمرین کدنویسی: 01 کوله پشتی Coding Exercise: 01 Knapsack

  • رویکرد 1: بازگشت Approach 1: Recursion

  • رویکرد بازگشتی: شبه کد Recursive Approach: Pseudocode

  • رویکرد بازگشتی: تحلیل پیچیدگی Recursive Approach: Complexity Analysis

  • کد پایتون: رویکرد بازگشتی Python Code : Recursive Approach

  • رویکرد 2: حفظ کردن Approach 2: Memoization

  • یادداشت: شبه کد Memoization: Pseudocode

  • کد پایتون: حافظه سازی Python Code: Memoization

  • یادداشت: تجزیه و تحلیل پیچیدگی Memoization: Complexity Analysis

  • رویکرد 3: جدول بندی Approach 3: Tabulation

  • کد پایتون: جدول بندی Python Code: Tabulation

  • جدول بندی: تحلیل پیچیدگی Tabulation: Complexity Analysis

  • رویکرد 4: روش جدول‌بندی بهینه شده در فضا Approach 4: Space Optimised Tabulation Approach

  • کد پایتون: جدول بهینه سازی فضا Python Code: Space Optimised Tabulation

  • روش جدول بندی بهینه شده فضا: تحلیل پیچیدگی Space Optimised Tabulation Approach: Complexity Analysis

  • کدگذاری سوال مصاحبه (متوسط): کوله پشتی بدون محدودیت CODING INTERVIEW QUESTION(Medium): Unbounded Knapsack

  • تمرین کدنویسی: کوله پشتی نامحدود Coding Exercise: Unbounded Knapsack

روز دوازدهم: نوع برنامه نویسی پویا - کوله پشتی Day 12: Dynamic Programming Type - Knapsack

  • گل های روز دوازدهم Day 12 Goals

  • کدگذاری سوال مصاحبه (متوسط): جمع هدف CODING INTERVIEW QUESTION(Medium): Target Sum

  • تمرین کدگذاری: جمع هدف Coding Exercise: Target Sum

  • کدگذاری سوال مصاحبه (متوسط): پارتیشن برابر مجموع زیر مجموعه CODING INTERVIEW QUESTION(Medium): Partition Equal Subset Sum

  • تمرین کدگذاری: پارتیشن برابر با جمع زیر مجموعه Coding Exercise: Partition Equal Subset Sum

روز سیزدهم: نوع برنامه نویسی پویا - LCS (طولانی ترین دنباله متداول) Day 13: Dynamic Programming Type - LCS ( Longest Common Subsequence)

  • گل های روز سیزدهم Day 13 Goals

  • کدگذاری سوال مصاحبه (متوسط): LCS CODING INTERVIEW QUESTION(Medium): LCS

  • تمرین کدنویسی: LCS (طولانی ترین دنباله متداول) Coding Exercise: LCS ( Longest Common Subsequence)

  • رویکرد 1: بازگشت Approach 1: Recursion

  • شبه کد Pseudocode

  • درخت بازگشتی و تجزیه و تحلیل پیچیدگی Recursion Tree and Complexity Analysis

  • کد پایتون: LCS Python Code: LCS

  • رویکرد 2: حفظ کردن Approach 2: Memoization

  • کد پایتون: حافظه‌سازی - LCS Python Code: Memoization - LCS

  • رویکرد 3: جدول بندی Approach 3: Tabulation

  • جدول بندی: تحلیل پیچیدگی Tabulation: Complexity Analysis

  • کد پایتون: جدول بندی - LCS Python Code : Tabulation - LCS

  • رویکرد 4: جدول بندی فضای بهینه - LCS Approach 4: Space Optimised Tabulation - LCS

  • کد پایتون: جدول‌بندی بهینه‌شده فضایی - LCS Python Code : Space Optimised Tabulation - LCS

  • کدگذاری سوال مصاحبه (متوسط): ویرایش فاصله CODING INTERVIEW QUESTION(Medium): Edit Distance

  • تمرین کدگذاری: ویرایش فاصله Coding Exercise: Edit Distance

  • شناسایی این به عنوان یک سوال نوع LCS Identifying this as an LCS Type Question

  • رویکرد 1: بازگشت Approach 1: Recursion

  • شبه کد Pseudocode

  • بازگشت: تحلیل پیچیدگی Recursion: Complexity Analysis

  • کد پایتون: رویکرد بازگشتی (ویرایش فاصله) Python Code: Recursive Approach(Edit Distance)

  • رویکرد 2: حفظ کردن Approach 2: Memoization

  • کد پایتون: حافظه‌گذاری (ویرایش فاصله) Python Code: Memoization(Edit Distance)

  • رویکرد 3: جدول بندی Approach 3: Tabulation

  • جدول بندی: تحلیل پیچیدگی Tabulation: Complexity Analysis

  • کد پایتون: جدول بندی (ویرایش فاصله) Python Code: Tabulation (Edit Distance)

  • رویکرد 4: جدول بندی فضایی بهینه شده Approach 4: Space Optimised Tabulation

  • کد پایتون: جدول‌بندی بهینه‌سازی فضا (ویرایش فاصله) Python Code: Space Optimised Tabulation ( Edit Distance)

روز چهاردهم: نوع برنامه نویسی پویا - LIS (طولانی ترین دنباله افزایشی) Day 14: Dynamic Programming Type - LIS ( Longest Increasing Subsequence)

  • گل های روز چهاردهم Day 14 Goals

  • کدگذاری سوال مصاحبه (متوسط): طولانی ترین دنباله افزایشی (LIS) CODING INTERVIEW QUESTION(Medium): Longest Increasing Subsequence (LIS)

  • تمرین کدگذاری: LIS Coding Exercise: LIS

  • رویکرد 1: بازگشت - LIS Approach 1: Recursion - LIS

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

  • تحلیل پیچیدگی - بازگشت - LIS Complexity Analysis - Recursion - LIS

  • کد پایتون - بازگشت - LIS Python Code - Recursion - LIS

  • رویکرد 2: حفظ کردن Approach 2: Memoization

  • تجزیه و تحلیل پیچیدگی - یادداشت Complexity Analysis - Memoization

  • کد پایتون - یادداشت - LIS Python Code - Memoization - LIS

  • رویکرد 3: جدول بندی - با استفاده از یک آرایه dp 2 بعدی Approach 3: Tabulation - using a 2D dp array

  • اجرا خشک Dry run

  • تجزیه و تحلیل پیچیدگی - جدول بندی - با استفاده از یک آرایه dp دو بعدی Complexity Analysis - Tabulation - using a 2D dp array

  • کد پایتون - جدول بندی با استفاده از آرایه dp 2 بعدی - LIS Python Code - Tabulation using a 2D dp array - LIS

  • رویکرد 4: جدول بندی - با استفاده از یک آرایه dp 1 بعدی Approach 4: Tabulation - using a 1D dp array

  • اجرا خشک Dry run

  • تجزیه و تحلیل پیچیدگی - جدول بندی - با استفاده از یک آرایه dp 1 بعدی Complexity Analysis- Tabulation - using a 1D dp array

  • کد-جدول پایتون - با استفاده از یک آرایه dp 1 بعدی Python Code-Tabulation - using a 1D dp array

  • رویکرد 5: استفاده از جستجوی باینری - LIS Approach 5: using Binary Search - LIS

  • بخش 1 - رویکرد 5: استفاده از جستجوی باینری - LIS Part 1 - Approach 5: using Binary Search - LIS

  • بخش 2 - رویکرد 5: استفاده از جستجوی باینری - LIS Part 2 - Approach 5: using Binary Search - LIS

  • جستجوی باینری برای این سوال (برای جزئیات بیشتر به بخش جستجوی باینری مراجعه کنید) Binary Search for this question ( refer Binary Search section for more details)

  • تجزیه و تحلیل پیچیدگی - رویکرد 5: با استفاده از جستجوی باینری - LIS Complexity Analysis - Approach 5: using Binary Search - LIS

  • کد پایتون - رویکرد 5: استفاده از جستجوی باینری - LIS Python Code - Approach 5: using Binary Search - LIS

  • کدگذاری سوال مصاحبه (متوسط): حداکثر طول زنجیره جفت CODING INTERVIEW QUESTION(Medium): Max Length of Pair Chain

  • تمرین کدنویسی: حداکثر طول زنجیره جفت Coding Exercise: Max Length of Pair Chain

  • کدگذاری سوال مصاحبه (سخت): پاکت عروسک روسی CODING INTERVIEW QUESTION(Hard): Russian Doll Envelopes

  • تمرین کدنویسی: پاکت عروسک روسی Coding Exercise: Russian Doll Envelopes

روز 15: نوع برنامه نویسی پویا - استراتژی شکاف/تکرار بر حسب طول Day 15: Dynamic Programming Type - Gap Strategy / Length wise Iteration

  • گل های روز پانزدهم Day 15 Goals

  • مقدمه ای بر Gap Strategy یا Length Wise Iteration Introduction to Gap Strategy or Length wise Iteration

  • کدگذاری سوال مصاحبه (متوسط): رشته های فرعی پالیندرومیک CODING INTERVIEW QUESTION(Medium): Palindromic Substrings

  • زیر رشته های پالیندرومیک Palindromic Substrings

  • شهود برای رویکرد Intuition for Approach

  • عدم شناسایی این به عنوان یک سوال DP Indetifying this as a DP question

  • رویکرد: بازگشت با حفظ کردن Approach: Recursion with memoization

  • شبه کد pseudocode

  • پر کردن جدول Memoization Filling the Memoization table

  • تکرار طول عاقلانه iterate length wise

  • بازگشت با یادداشت: تجزیه و تحلیل پیچیدگی Recursion with memoization: Complexity analysis

  • کد پایتون: بازگشت با حافظه Python Code: Recursion with memoization

  • رویکرد جدول بندی Tabulation approach

  • روش جدول بندی: تحلیل پیچیدگی Tabulation approach: Complexity Analysis

  • کد پایتون: جدول بندی Python Code: Tabulation

  • کدگذاری سوال مصاحبه (متوسط): طولانی ترین زیر رشته پالیندرومیک CODING INTERVIEW QUESTION(Medium): Longest Palindromic Substring

  • تمرین کدگذاری: طولانی ترین زیر رشته پالیندرومیک Coding Exercise: Longest Palindromic Substring

  • کدگذاری سوال مصاحبه (متوسط): طولانی ترین دنباله پالیندرومیک CODING INTERVIEW QUESTION(Medium): Longest Palindromic Subsequence

  • تمرین کدنویسی: طولانی ترین دنباله پالیندرومیک Coding Exercise: Longest Palindromic Subsequence

روز شانزدهم: نوع برنامه نویسی پویا - روش پارتیشن Day 16: Dynamic Programming Type - Partition Method

  • اهداف روز شانزدهم Day 16 Goals

  • مقدمه ای بر روش پارتیشن بندی Introduction to the Partition method

  • کدگذاری سوال مصاحبه (متوسط): پارتیشن بندی پالیندروم CODING INTERVIEW QUESTION(Medium): Palindrome Partitioning

  • تمرین کدگذاری: پارتیشن بندی پالیندروم Coding Exercise: Palindrome Partitioning

  • رویکرد Approach

  • شبه کد Pseudocode

  • یادداشت جانبی: Computing n C r Side note: Computing n C r

  • تحلیل پیچیدگی Complexity Analysis

  • کد پایتون: پارتیشن بندی پالیندروم Python Code: Palindrome Partitioning

  • کدگذاری سوال مصاحبه (سخت): پارتیشن بندی پالیندروم 2 ( حداقل برش ها) - سخت CODING INTERVIEW QUESTION(Hard):Palindrome Partitioning 2 ( Minimum Cuts) - Hard

  • تمرین کدنویسی: پارتیشن بندی پالیندروم 2 (برش های کوتاه) Coding Exercise: Palindrom Partitioning 2 ( Min Cuts)

  • رویکرد 1: بازگشت Approach 1: Recursion

  • کد پایتون: بازگشت - پارتیشن بندی پالیندروم 2 Python Code: Recursion - Palindrome Partitioning 2

  • رویکرد 2: حفظ کردن Approach 2: Memoization

  • کد Python: Memoization - Palindrome Partitioning 2 Python Code: Memoization - Palindrome Partitioning 2

  • جدول بندی - رویکرد A: پارتیشن بندی پالیندروم 2 Tabulation - Approach A : Palindrome Partitioning 2

  • اجرای خشک Dry Run

  • شبه کد Pseudocode

  • کد پایتون: جدول بندی - رویکرد A: پارتیشن بندی پالیندروم 2 Python Code : Tabulation - Approach A : Palindrome Partitioning 2

  • تحلیل پیچیدگی Complexity Analysis

  • جدول بندی - رویکرد B: پارتیشن بندی پالیندروم 2 Tabulation - Approach B : Palindrome Partitioning 2

  • اجرا خشک Dry run

  • شبه کد Pseudocode

  • کد پایتون: جدول بندی - رویکرد A: پارتیشن بندی پالیندروم 2 Python Code: Tabulation - Approach A : Palindrome Partitioning 2

  • تحلیل پیچیدگی Complexity Analysis

روز هفدهم: نوع برنامه نویسی پویا - روش پارتیشن Day 17: Dynamic Programming Type - Partition Method

  • اهداف روز هفدهم Day 17 Goals

  • کدگذاری سوال مصاحبه (متوسط): شکستن کلمه CODING INTERVIEW QUESTION(Medium): Word Break

  • تمرین کدنویسی: شکستن کلمه Coding Exercise: Word Break

  • کدگذاری سوال مصاحبه (سخت): ضرب زنجیره ماتریس CODING INTERVIEW QUESTION(Hard): Matrix Chain Multiplication

  • تمرین کدگذاری: ضرب زنجیره ماتریس Coding Exercise: Matrix Chain Multiplication

روز هجدهم: نوع برنامه نویسی پویا - الگوریتم کادان Day 18: Dynamic Programming Type - Kadane's Algorithm

  • اهداف روز هجدهم Day 18 Goals

  • کدگذاری سوال مصاحبه (متوسط): Max Subarray CODING INTERVIEW QUESTION (Medium): Max Subarray

  • تمرین کدنویسی: Max Subarray Coding Exercise: Max Subarray

  • کدگذاری سوال مصاحبه (متوسط): حداکثر محصول فرعی CODING INTERVIEW QUESTION (Medium): Maximum Product Subarray

  • تمرین کدگذاری: حداکثر محصول فرعی Coding Exercise: Maximum Product Subarray

روز 19: ساختارها و الگوریتم های داده آرایه Day 19: Arrays Data Structures and Algorithms

  • گل های روز 19 Day 19 Goals

  • مصاحبه کدنویسی Q1 (متوسط): آرایه را بچرخانید Coding Interview Q1(Medium): Rotate Array

  • تمرین کدگذاری: چرخش آرایه Coding Exercise: Rotate Array

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • راه حل کد پایتون PYTHON Code Solution

  • روش کد پایتون 2 Python Code Method 2

  • مصاحبه کدگذاری Q2 (متوسط): ظرفی با بیشترین آب Coding Interview Q2(Medium): Container with most water

  • تمرین کدگذاری: ظرفی با بیشترین آب Coding Exercise: Container with most water

  • روش 1 و آنالیز Big O Method 1 and Big O analysis

  • روش کد پایتون 1 PYTHON Code Method 1

  • روش 2 و تجزیه و تحلیل Big O Method 2 and Big O analysis

  • روش کد PYTHON 2 PYTHON Code Method 2

روز 20: دیکشنری ها/جداول هش ساختارها و الگوریتم های داده Day 20: Dictionaries / Hash Tables Data Structures and Algorithms

  • گل های روز بیستم Day 20 Goals

  • جدول هش: دوره خرابی ساختارهای داده Hash Table: Data Structures Crash Course

  • مصاحبه کدنویسی Q1 (آسان): دو مجموع Coding Interview Q1(Easy): Two Sum

  • تمرین کدگذاری: دو مجموع Coding Exercise: Two Sum

  • روش 1، تجزیه و تحلیل Big O Method 1, Big O analysis

  • کد پایتون PYTHON Code

  • روش 2، تجزیه و تحلیل Big O Method 2, Big O analysis

  • کد پایتون PYTHON Code

  • کد نویسی مصاحبه Q2 (آسان): رشته های ایزومورف Coding Interview Q2(Easy): Isomorphic Strings

  • تمرین کدگذاری: رشته های هم شکل Coding Exercise: Isomorphic Strings

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون PYTHON Code

روز 21: ساختارها و الگوریتم های داده رشته ها Day 21 : Strings Data Structures and Algorithms

  • گل های روز 21 Day 21 Goals

  • دوره خرابی ساختارهای داده: رشته ها Data Structures Crash Course: Strings

  • مصاحبه کدنویسی Q1 (آسان): اولین کاراکتر غیر تکراری Coding Interview Q1(Easy): First Non Repeating Character

  • تمرین کدنویسی: اولین کاراکتر غیر تکراری Coding Exercise: First Non Repeating Character

  • روش 1 و آنالیز Big O Method 1 and Big O analysis

  • کد پایتون PYTHON code

  • روش 2 و تجزیه و تحلیل Big O Method 2 and Big O analysis

  • کد پایتون PYTHON code

  • مصاحبه کدنویسی Q2 (آسان): آیا پالیندروم است؟ Coding Interview Q2(Easy): Is Palindrome ?

  • تمرین کدگذاری: آیا پالیندروم است؟ Coding Exercise: Is Palindrome ?

  • روش 1 و آنالیز Big O Method 1 and Big O analysis

  • کد پایتون PYTHON code

  • روش 2 و تجزیه و تحلیل Big O Method 2 and Big O analysis

  • کد پایتون PYTHON code

  • روش 3 و تجزیه و تحلیل Big O Method 3 and Big O analysis

  • کد پایتون PYTHON code

روز 22: ساختارها و الگوریتم های داده رشته ها Day 22: Strings Data Structures and Algorithms

  • گل های روز 22 Day 22 Goals

  • مصاحبه کدنویسی Q1 (متوسط): طولانی ترین رشته فرعی با کاراکترهای منحصر به فرد Coding Interview Q1(Medium): Longest Sub string with Unique characters

  • تمرین کدگذاری: طولانی ترین رشته فرعی با کاراکترهای منحصر به فرد Coding Exercise: Longest Sub string with Unique characters

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون PYTHON code

  • مصاحبه کدنویسی Q2 (متوسط): آناگرام های گروهی Coding Interview Q2(Medium): Group Anagrams

  • تمرین کدگذاری: آناگرام های گروهی Coding Exercise: Group Anagrams

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون PYTHON code

روز 23: الگوریتم های جستجو Day 23: Searching Algorithms

  • گل های روز 23 Day 23 Goals

  • کدگذاری مصاحبه Q1 (آسان): الگوریتم جستجوی باینری Coding Interview Q1 (Easy): Binary Search Algorithm

  • تمرین کدگذاری: الگوریتم جستجوی باینری Coding Exercise: Binary Search Algorithm

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد PYTHON Iterative PYTHON Code Iterative

  • کد PYTHON بازگشتی PYTHON Code Recursive

  • مصاحبه کدگذاری Q2 (متوسط): جستجو در آرایه مرتب شده چرخش شده Coding Interview Q2(Medium): Search in rotated sorted array

  • تمرین کدگذاری: در آرایه مرتب شده چرخانده شده جستجو کنید Coding Exercise: Search in rotated sorted array

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون PYTHON Code

روز 24: الگوریتم های جستجو Day 24: Searching Algorithms

  • گل های روز 24 Day 24 Goals

  • کدگذاری مصاحبه Q1 (متوسط): جستجوی محدوده Coding Interview Q1(Medium): Search for range

  • تمرین کدگذاری: محدوده را جستجو کنید Coding Exercise: Search for range

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون - بازگشتی PYTHON Code - Recursive

  • کد پایتون - تکراری PYTHON Code - Iterative

  • مصاحبه کدنویسی Q2 (متوسط): جستجو در ماتریس Coding Interview Q2(Medium): Search in Matrix

  • تمرین کدنویسی: جستجو در ماتریس Coding Exercise: Search in Matrix

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون PYTHON code

روز 25: الگوریتم های مرتب سازی Day 25: Sorting Algorithms

  • گل های روز 25 Day 25 Goals

  • مصاحبه کدنویسی Q1: الگوریتم مرتب سازی حباب Coding Interview Q1: Bubble Sort Algorithm

  • تمرین کدنویسی: الگوریتم مرتب سازی حباب Coding Exercise: Bubble Sort Algorithm

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

  • مصاحبه کدگذاری Q2: الگوریتم مرتب سازی درج، تجزیه و تحلیل Big O Coding Interview Q2: Insertion Sort Algorithm, Big O analysis

  • تمرین کدگذاری: الگوریتم مرتب سازی درج Coding Exercise : Insertion Sort Algorithm

  • کد پایتون Python code

  • مرتب سازی درج یک الگوریتم مرتب سازی پایدار است Insertion sort is a stable sorting Algorithm

روز 26: الگوریتم های مرتب سازی Day 26: Sorting Algorithms

  • گل های روز 26 Day 26 Goals

  • مصاحبه کدگذاری Q1: الگوریتم مرتب سازی انتخاب، تجزیه و تحلیل Big O Coding Interview Q1: Selection Sort Algorithm, Big O analysis

  • تمرین کدگذاری: الگوریتم مرتب سازی انتخاب Coding Exercise: Selection Sort Algorithm

  • کد پایتون Python Code

  • مصاحبه کدنویسی Q2: الگوریتم مرتب سازی ادغام Coding Interview Q2: Merge Sort Algorithm

  • تمرین کدنویسی: Merge Sort Coding Exercise: Merge Sort

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

روز 27: الگوریتم های مرتب سازی Day 27: Sorting Algorithms

  • گل های روز 27 Day 27 Goals

  • مصاحبه کدنویسی Q1: الگوریتم مرتب سازی سریع Coding Interview Q1: Quick Sort Algorithm

  • تمرین کدنویسی: مرتب سازی سریع Coding Exercise: Quick Sort

  • بهینه سازی پیچیدگی زمانی Optimise Time Complexity

  • بهینه سازی پیچیدگی فضا Optimise Space Complexity

  • کد پایتون Python Code

  • مصاحبه کدگذاری Q2: الگوریتم مرتب سازی ریشه، تجزیه و تحلیل Big O Coding Interview Q2: Radix Sort Algorithm, Big O analysis

  • تمرین کدگذاری: الگوریتم مرتب سازی رادیکس Coding Exercise: Radix Sort Algorithm

  • کد پایتون Python Code

روز 28 ساختارها و الگوریتم های داده لیست پیوندی واحد Day 28 Singly Linked List Data Structures and Algorithms

  • گل های روز 28 Day 28 Goals

  • دوره آموزشی خرابی ساختارهای داده: لیست های پیوندی Data Structures Crash Course: Linked Lists

  • مصاحبه کدنویسی Q1 (متوسط): یک لیست با پیوند واحد طراحی کنید Coding Interview Q1(Medium): Design a Singly Linked List

  • تمرین کدنویسی: یک لیست با پیوند واحد طراحی کنید Coding Exercise: Design a Singly Linked List

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

  • مصاحبه کدنویسی Q2: موارد تکراری را حذف کنید Coding Interview Q2: Remove Duplicates

  • تمرین کدگذاری: موارد تکراری را حذف کنید Coding Exercise: Remove Duplicates

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

روز 29 ساختارها و الگوریتم های داده لیست پیوندی واحد Day 29 Singly Linked List Data Structures and Algorithms

  • گل های روز 29 Day 29 Goals

  • مصاحبه کدنویسی Q1 (آسان): معکوس Coding Interview Q1(Easy): Reverse

  • تمرین کدگذاری: Reverse SLL Coding Exercise: Reverse SLL

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

  • مصاحبه کدگذاری Q2 (متوسط): تشخیص چرخه Coding Interview Q2(Medium) : Cycle Detection

  • تمرین کدگذاری: تشخیص چرخه Coding Exercise: Cycle Detection

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

  • اثبات proof

روز 30: ساختارها و الگوریتم‌های داده فهرست به هم پیوسته Day 30 : Singly Linked List Data Structures and Algorithms

  • گل های روز سی ام Day 30 Goals

  • کدگذاری مصاحبه Q1 (متوسط): شماره تکراری را پیدا کنید Coding Interview Q1(Medium): Find duplicate number

  • تمرین کدگذاری: شماره تکراری را پیدا کنید Coding Exercise: Find duplicate number

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون Python code

  • مصاحبه کدنویسی Q2 (متوسط): 2 عدد اضافه کنید Coding Interview Q2(Medium): Add 2 numbers

  • تمرین کدنویسی: 2 عدد اضافه کنید Coding Exercise: Add 2 numbers

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون Python code

روز 31 ساختارها و الگوریتم های داده لیست پیوندی دوگانه Day 31 Doubly Linked List Data Structures and Algorithms

  • گل های روز سی و یکم Day 31 Goals

  • مصاحبه کدنویسی Q1: حذف گره، درج گره Coding Interview Q1: Remove Node, Insert Node

  • تمرین کدگذاری: حذف گره Coding Exercise: Remove Node

  • روش حذف Method remove

  • کد پایتون: حذف کنید Python code: Remove

  • درج مقدمه Insert Intro

  • روش درج Method Insert

  • تمرین کدگذاری: درج گره Coding Exercise: Insert Node

  • کد پایتون: درج کنید Python code: Insert

  • مصاحبه کدنویسی Q2: حذف مقدار، درج در موقعیت در لیست دوبل پیوند شده Coding Interview Q2: Remove Value, Insert at Position in Doubly Linked List

  • تمرین کدنویسی: حذف مقدار در لیست پیوندی دوگانه Coding Exercise :Remove Value in Doubly Linked List

  • روش Val را حذف کنید Remove Val Method

  • کد پایتون Python Code

  • درج در موقعیت Insert at Position

  • روش method

  • تمرین کدگذاری: در DLL در موقعیت قرار دهید Coding Exercise: Insert at Position in DLL

  • کد پایتون Python Code

روز 32: ساختارها و الگوریتم های داده را پشته می کند Day 32: Stacks Data Structures and Algorithms

  • گل های روز سی و دوم Day 32 Goals

  • دوره خرابی ساختارهای داده: پشته ها و صف ها Data Structures Crash Course: Stacks and Queues

  • مصاحبه کدنویسی Q1: یک پشته طراحی کنید Coding Interview Q1: Design a Stack

  • تمرین کدنویسی: یک پشته (با لیست پیوندی) طراحی کنید Coding Exercise: Design a Stack (with Linked List)

  • کد پایتون Python Code

  • مصاحبه کدنویسی Q2 (متوسط): نماد لهستانی معکوس Coding Interview Q2(Medium): Reverse Polish Notation

  • تمرین کدنویسی: علامت گذاری معکوس لهستانی Coding Exercise: Reverse Polish Notation

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون Python Code

روز 33: ساختارها و الگوریتم های داده صف Day 33: Queue Data Structures and Algorithms

  • گل های روز سی و سوم Day 33 Goals

  • مصاحبه کدنویسی Q1: یک صف طراحی کنید Coding Interview Q1: Design a Queue

  • تمرین کدنویسی: با استفاده از لیست پیوندی یک صف طراحی کنید Coding Exercise: Design a Queue using a Linked List

  • کد پایتون Python Code

  • مصاحبه کدنویسی Q2 (آسان): صف با پشته Coding Interview Q2(Easy) : Queue with Stack

  • تمرین کدنویسی: صف با پشته Coding Exercise : Queue with Stack

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون Python Code

روز سی و چهارم: درخت دودویی/ساختارها و الگوریتم های درخت جستجوی باینری Day 34: Binary Tree / Binary Search Tree Data Structures and Algorithms

  • گل های روز سی و چهارم Day 34 Goals

  • دوره آموزشی خرابی ساختارهای داده: مقدمه درختان Data Structures Crash Course: Trees Introduction

  • نظریه: درختان دودویی 1 Theory: Binary Trees 1

  • اثبات: ارتفاع درخت باینری متعادل کف است (log N) Proof : height of Balanced Binary tree is floor(log N)

  • نظریه: اصطلاحات درخت دودویی Theory: Binary Tree Terminaologies

  • BST چیست - درخت جستجوی باینری What is a BST - Binary Search Tree

  • مصاحبه کدگذاری Q1: ساخت درخت جستجوی باینری، تجزیه و تحلیل Big O Coding Interview Q1: Construct Binary Search Tree,Big O analysis

  • تمرین کدگذاری: درخت جستجوی باینری را بسازید Coding Exercise: Construct Binary Search Tree

  • کد پایتون Python Code

  • مصاحبه کدگذاری Q2: Traverse - BFS و DFS، تجزیه و تحلیل Big O Coding Interview Q2 : Traverse - BFS and DFS,Big O analysis

  • تمرین کدگذاری: تراورس - BFS و DFS Coding Exercise : Traverse - BFS and DFS

  • کد پایتون Python Code

روز 35: درخت دودویی/ساختارها و الگوریتم های درخت جستجوی باینری Day 35: Binary Tree / Binary Search Tree Data Structures and Algorithms

  • گل های روز سی و پنجم Day 35 Goals

  • کدگذاری مصاحبه Q1 (متوسط): پیمایش سطح سفارش Coding Interview Q1(Medium): Level Order traversal

  • تمرین کدگذاری: روش نمونه، پیمایش ترتیب سطح Coding Exercise: Instance method, Level Order traversal

  • روش درج Insert method

  • کد پایتون Python code

  • روش پیمایش ترتیب سطح و تجزیه و تحلیل Big O Level Order Traversal Method and Big O analysis

  • کد پایتون - پیمایش ترتیب سطح Python code - Level order traversal

  • مصاحبه کدگذاری Q2 (متوسط): نمای چپ/راست Coding Interview Q2(Medium): Left / Right view

  • تمرین کدنویسی: نمای چپ/راست Coding Exercise: Left / Right view

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python code

روز سی و ششم: ساختارها و الگوریتم های داده درختی باینری Day 36: Binary Tree Data Structures and Algorithms

  • گل های روز سی و ششم Day 36 Goals

  • مصاحبه کدنویسی Q1 (آسان): درخت دودویی را معکوس کنید Coding Interview Q1 (Easy): Invert Binary Tree

  • روش تکراری و تجزیه و تحلیل Big O Iterative method and Big O analysis

  • کد پایتون: تکرار شونده Python Code: Iterative

  • روش بازگشتی و تجزیه و تحلیل Big O Recursive method and Big O analysis

  • کد پایتون: بازگشتی Python Code: Recursive

  • مصاحبه کدنویسی Q2 (آسان): قطر درخت دودویی Coding Interview Q2 (Easy): Diameter of Binary Tree

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

روز 37: ساختارها و الگوریتم های داده درختان جستجوی دودویی Day 37: Binary Search Trees Data Structures and Algorithms

  • گل های روز سی و هفتم Day 37 Goals

  • کدگذاری مصاحبه Q1 (آسان): آرایه مرتب شده به BST Coding Interview Q1(Easy): sorted array to BST

  • روش و تجزیه و تحلیل Big O method and Big O analysis

  • کد پایتون Python code

  • مصاحبه کدنویسی Q2 (متوسط): BST معتبر Coding Interview Q2(Medium) : Valid BST

  • روش و تجزیه و تحلیل Big O Method and Big O analysis

  • کد پایتون Python Code

روز 38: ساختارها و الگوریتم های داده ها و صف های اولویت دار Day 38: Heaps and Priority Queue Data Structures and Algorithms

  • گل های روز 38 Day 38 Goals

  • Binary Heap: Data Structure Crash Course Binary Heap: Data Structure Crash Course

  • مصاحبه کدگذاری Q1: ساخت Max Binary Heap، تجزیه و تحلیل Big O Coding Interview Q1: Construct Max Binary Heap, Big O analysis

  • اثبات پیچیدگی زمان هیپ باینری Proof of Build Binary Heap Time Complexity

  • کد پایتون Python Code

  • مقدمه ای بر صف اولویت Introduction to Priority Queue

  • مصاحبه کدگذاری Q2: ساخت صف اولویت، تجزیه و تحلیل Big O Coding Interview Q2: Construct Priority Queue,Big O analysis

  • کد پایتون Python Code

روز سی و نهم: نمودارها و ساختارهای داده ها و الگوریتم ها Day 39: Graphs Data Structures and Algorithms

  • گل های روز سی و نهم Day 39 Goals

  • مصاحبه کدگذاری Q1: BFS، فهرست مجاورت، تجزیه و تحلیل Big O Coding Interview Q1: BFS, Adjacency List,Big O analysis

  • کد پایتون Python Code

  • BFS، ماتریس مجاورت BFS, Adjacency Matrix

  • کد پایتون Python Code

  • مصاحبه کدنویسی Q2: DFS، بازگشتی، تجزیه و تحلیل Big O Coding Interview Q2: DFS, Recursive, Big O analysis

  • کد پایتون Python Code

  • DFS Iterative DFS Iterative

  • کد پایتون Python Code

روز 40: نمودارها و ساختارهای داده و الگوریتم ها Day 40: Graphs Data Structures and Algorithms

  • گل های روز چهلم Day 40 Goals

  • مصاحبه کدگذاری Q1: تعداد مؤلفه ها، تجزیه و تحلیل Big O Coding Interview Q1: Number of Components, Big O analysis

  • کد پایتون Python Code

  • برنامه نویسی مصاحبه Q2 (متوسط): زمانبندی دوره Coding Interview Q2(Medium): Course Scheduler

  • روش Brute Force و تجزیه و تحلیل Big O Brute Force Method and Big O analysis

  • کد پایتون - روش Brute Force Python Code - Brute Force Method

  • روش مبتنی بر مرتب سازی توپولوژیکی و تجزیه و تحلیل Big O Topological Sort based method and Big O analysis

  • کد پایتون Python Code

نمایش نظرات

نظری ارسال نشده است.

آموزش 40 روز کد ساختارهای داده و الگوریتم‌های PYTHON LEETCODE
خرید اشتراک و دانلود خرید تکی و دانلود | 360,000 تومان (6 روز مهلت دانلود) در صورت خرید اشتراک، این آموزش بدلیل حجم بالا معادل 3 دوره است و 3 دوره از اشتراک شما کم می شود. زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
37.5 hours
433
Udemy (یودمی) udemy-small
10 اسفند 1402 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
2,025
5 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Jackson Kailath Jackson Kailath

جکسون MBA خود را از دانشکده تجارت هند به پایان رسانده است. او در آزمون CAT 760 و GM صدک کرده است. او دوست دارد به دانش آموزان بیاموزد و از توضیح ساده مفاهیم پیچیده برای توضیح آنها به روشی آسان یاد می گیرد. او از سال 2012 و حتی قبل از آن به دانشجویان استعداد کمی را می آموزد!

Udemy (یودمی)

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

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