آموزش ساختارهای داده پیشرفته، الگوها و تکنیک‌های بازگشتی - آخرین آپدیت

دانلود Advanced Data Structures, Patterns, and Recursion Techniques

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: این دوره دارای قابلیت Coursera Coach است! روشی هوشمندتر برای یادگیری با گفتگوهای تعاملی و همزمان که به شما کمک می‌کند دانش خود را بسنجید، فرضیات را به چالش بکشید و همگام با پیشرفت در دوره، درک خود را عمیق‌تر کنید. در این دوره، شما به بررسی ساختارهای داده و الگوریتم‌های پیشرفته‌ای خواهید پرداخت که برای حل مسائل پیچیده ضروری هستند. از تکنیک‌های پنجره لغزان (Sliding Window) گرفته تا جستجوی باینری، شما بینش عمیقی نسبت به روش‌های بهینه برای حل مسئله به دست خواهید آورد. با تمرکز بر الگوهایی مانند دو اشاره‌گر (Two Pointers)، بازگشت (Recursion) و بک‌تراکینگ (Backtracking)، پایه‌ای قوی برای مقابله با طیف گسترده‌ای از چالش‌های برنامه‌نویسی خواهید ساخت. با پیشرفت در دوره، یاد خواهید گرفت که چگونه این تکنیک‌ها را به صورت کارآمد و مؤثر پیاده‌سازی کنید تا مهارت‌های حل مسئله شما برای کاربردهای دنیای واقعی تقویت شود. ساختار دوره حول محور روش‌های مختلف حل مسئله طراحی شده است. دوره با الگوهای آرایه مانند تکنیک‌های پنجره لغزان و دو اشاره‌گر شروع می‌شود، و پس از آن کاربردهای جستجوی باینری بر روی آرایه‌های چرخشی و بازه‌ها ارائه می‌گردد. دوره با مباحث بازگشت و بک‌تراکینگ و با استفاده از مسائل Leetcode برای تثبیت درک شما به پایان می‌رسد. شما در هر مبحث با آموزش‌های ویدئویی و تمرین‌های عملی که مفاهیم کلیدی را تقویت می‌کنند، راهنمایی خواهید شد. این دوره برای افرادی که با ساختارهای داده و الگوریتم‌های پایه آشنا هستند و به دنبال ارتقای توانایی‌های برنامه‌نویسی خود می‌باشند، ایده‌آل است. این دوره برای هر کسی که خود را برای مصاحبه‌های فنی آماده می‌کند یا هدفش تعمیق دانش در زمینه حل مسائل الگوریتمی است، بسیار مناسب است. با سطح دشواری متوسط، این دوره نیازمند آشنایی با زبان Java و مفاهیم اولیه الگوریتم است. در پایان دوره، شما قادر خواهید بود ساختارهای داده و الگوریتم‌های پیشرفته را برای حل مسائل پیچیده پیاده‌سازی کنید، راه‌حل‌ها را با استفاده از تکنیک‌های رایج بهینه سازید و از بازگشت و بک‌تراکینگ برای حل کارآمد وظایف چالش‌برانگیز برنامه‌نویسی استفاده کنید.

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

الگوی آرایه شماره ۱ - روش پنجره لغزان + مسائل تمرینی Array Pattern #1 - Sliding Window Method + Practice Problems

  • روش پنجره لغزان چیست؟ بخش ۱ What is Sliding Window Method? - Part 1

  • روش پنجره لغزان چیست؟ بخش ۲ What is Sliding Window Method? - Part 2

  • چگونه مسائل روش پنجره لغزان را سریع پیاده‌سازی کنیم؟ How to Implement Sliding Window Method Problems Quickly?

  • مسئله تمرینی ۱ - طولانی‌ترین زیررشته بدون کاراکتر تکراری Practice Problem 1 - Longest Substring Without Repeating Characters

  • مسئله تمرینی ۲ - جایگزینی طولانی‌ترین کاراکتر تکراری Practice Problem 2 - Longest Repeating Character Replacement

  • مسئله تمرینی ۳ - حداکثر مقدار پنجره لغزان در جاوا Practice Problem 3 - Sliding Window Maximum - Java

الگوی آرایه شماره ۲ - روش دو اشاره‌گر + مسائل تمرینی Array Pattern #2 - Two Pointer Method + Practice Problems

  • مسئله تمرینی ۱ - ظرف با بیشترین آب در جاوا Practice Problem 1 - Container With Most Water - Java

  • مسئله تمرینی ۲ - به دام انداختن آب باران در جاوا Practice Problem 2 - Trapping Rain Water - Java

  • مسئله تمرینی ۳ - مجموع دو عدد (آرایه ورودی مرتب است) در جاوا Practice Problem 3 - Two Sum II - Input Array Is Sorted - Java

  • مسئله تمرینی ۴ - پالیندروم معتبر در جاوا Practice Problem 4 - Valid Palindrome - Java

الگوی آرایه شماره ۳ - ریاضیات و هندسه Array Pattern #3 - Math & Geometry

  • مسئله تمرینی ۱ - صفر کردن عناصر ماتریس Practice Problem 1 - Set Matrix Zero

  • مسئله تمرینی ۲ - چرخش تصویر Practice Problem 2 - Rotate Image

  • مسئله تمرینی ۳ - ماتریس مارپیچی Practice Problem 3 - Spiral Matrix

  • مسئله تمرینی ۴ - توان (X, N) Practice Problem 4 - Pow (X, N)

الگوی آرایه شماره ۴ - بازه‌ها (Intervals) Array Pattern #4 - Intervals

  • مسئله تمرینی ۱ - درج بازه Practice Problem 1 - Insert Interval

  • مسئله تمرینی ۲ - یافتن موقعیت درج Practice Problem 2 - Search Insert Position

  • مسئله تمرینی ۳ - ادغام بازه‌ها Practice Problem 3 - Merge Intervals

  • مسئله تمرینی ۴ - اتاق‌های جلسه Practice Problem 4 - Meeting Rooms

  • مسئله تمرینی ۵ - بازه‌های غیر هم‌پوشان Practice Problem 5 - Non Overlapping Intervals

تئوری جستجوی باینری Binary Search Theory

  • مقدمه‌ای بر جستجوی باینری Introduction To Binary Search

  • پیاده‌سازی جستجوی باینری Binary Search Implementation

  • پیچیدگی جستجوی باینری Binary Search Complexity

الگوی جستجوی باینری شماره ۱ - جستجوی باینری روی آرایه‌های مرتب‌شده چرخشی Binary Search Pattern #1 - Binary Search Over Rotated Sorted Arrays

  • مسئله تمرینی ۱ - یافتن اولین و آخرین موقعیت عنصر در آرایه مرتب شده Practice Problem 1 - Find First And Last Position Of Element In Sorted Array

  • مسئله تمرینی ۲ - یافتن حداقل در یک آرایه مرتب‌شده چرخشی Practice Problem 2 - Find Minimum In A Rotated Sorted Array

  • مسئله تمرینی ۳ - جستجو در یک آرایه مرتب‌شده چرخشی Practice Problem 3 - Search In A Rotated Sorted Array

الگوی جستجوی باینری شماره ۲ - جستجوی باینری روی بازه Binary Search Pattern #2 - Binary Search Over Range

  • مسئله تمرینی ۱ - کوکو در حال خوردن موز Practice Problem 1 - Koko Eating Bananas

  • مسئله تمرینی ۲ - نیروی مغناطیسی بین دو توپ Practice Problem 2 - Magnetic Force Between Two Balls

بازگشت و بک‌تراکینگ + مسائل تمرینی Leetcode Recursion and Backtracking + Leetcode Practice Problems

  • بک‌تراکینگ چیست و چگونه پیاده‌سازی می‌شود؟ What is backtracking and how it is implemented?

  • مثال بک‌تراکینگ ۱ با پیاده‌سازی دقیق Backtracking Example 1 With Detailed Implementation

  • Leetcode #78 - زیرمجموعه‌ها (Java) Leetcode #78 - Subsets - Java

  • Leetcode #46 - جایگشت‌ها (Java) Leetcode #46 - Permutations - Java

  • Leetcode #17 - ترکیبات حروف یک شماره تلفن (Java) Leetcode #17 - Letter Combinations Of A Phone Number

  • Leetcode #39 - مجموع ترکیبی (Java) Leetcode #39 - Combination Sum - Java

  • Leetcode #40 - مجموع ترکیبی ۲ (Java) Leetcode #40 - Combination Sum II

  • Leetcode #90 - زیرمجموعه‌ها ۲ (Java) Leetcode #90 - Subsets II - Java

  • Leetcode #51 - N وزیر (Java) Leetcode #51 - N Queens - Java

  • Leetcode #79 - جستجوی کلمه Leetcode #79 - Word Search

  • Leetcode #212 - جستجوی کلمه ۲ Leetcode #212 - Word Search II

تئوری و پیاده‌سازی درخت‌های باینری Binary Trees Theory & Implementation

  • مقدمه‌ای بر درخت‌های باینری Introduction to Binary Trees

  • اصطلاحات مربوط به درخت‌ها Terms Related To Trees

  • الگوریتم‌های پیمایش درخت Tree Traversal Algorithms

  • پیمایش سطح به سطح (Level Order Traversal) Level Order Traversal

  • پیاده‌سازی درخت‌ها با استفاده از ارجاع (References) Implementing Trees Using References

  • پیاده‌سازی درخت‌ها با استفاده از آرایه‌ها Implementing Trees Using Arrays

مسائل تمرینی درخت‌های باینری Binary Trees Practice Problems

  • Leetcode #100 - درخت یکسان (Java) Leetcode #100 - Same Tree - Java

  • Leetcode #572 - زیردرخت یک درخت دیگر (Java) Leetcode #572 - Subtree Of Another Tree - Java

  • Leetcode #101 - درخت متقارن (Java) Leetcode #101 - Symmetric Tree - Java

  • Leetcode #104 - حداکثر عمق یک درخت باینری (Java) Leetcode #104 - Maximum Depth Of A Binary Tree - Java

  • پیاده‌سازی پیمایش PreOrder در درخت‌ها با استفاده از آرایه‌ها PreOrder Traversal Implementation in Trees Using Arrays

  • Leetcode #226 - معکوس کردن درخت باینری (Java) Leetcode #226 - Invert Binary Tree - Java

  • Leetcode #543 - قطر یک درخت باینری (Java) Leetcode #543 - Diameter Of A Binary Tree - Java

  • Leetcode #94 - پیمایش InOrder درخت باینری (Java) Leetcode #94 - Binary Tree InOrder Traversal - Java

  • Leetcode #102 - پیمایش Level Order درخت باینری (Java) Leetcode #102 - Binary Tree Level Order Traversal - Java

  • Leetcode #112 - مجموع مسیر (Java) Leetcode #112 - Path Sum - Java

  • Leetcode #113 - مجموع مسیر ۲ (Java) Leetcode #113 - Path Sum II - Java

  • Leetcode #993 - پسرعموها در درخت باینری (Java) Leetcode #993 - Cousins in Binary Tree - Java

  • Leetcode #1161 - حداکثر مجموع سطح درخت باینری (Java) Leetcode #1161 - Maximum Level Sum of Binary Tree - Java

  • Leetcode #105 - ساخت درخت باینری از پیمایش Preorder و Inorder (Java) Leetcode #105 - Construct Binary Tree From Preorder and Inorder Traversal - Java

  • Leetcode #110 - درخت باینری متوازن (Java) Leetcode #110 - Balanced Binary Tree - Java

  • Leetcode #199 - نمای سمت راست درخت باینری (Java) Leetcode #199 - Binary Tree Right Side View - Java

  • Leetcode #1448 - شمارش گره‌های خوب در درخت باینری (Java) Leetcode #1448 - Count Good Nodes In Binary Tree - Java

  • Leetcode #404 - مجموع برگ‌های چپ (Java) Leetcode #404 - Sum Of Left Leaves - Java

  • Leetcode #124 - حداکثر مجموع مسیر در درخت باینری (Java) Leetcode #124 - Binary Tree Maximum Path Sum - Java

  • Leetcode #208 - پیاده‌سازی Trie (درخت پیشوند) (Java) Leetcode #208 - Implement Trie (Prefix Sum Tree) - Java

  • Leetcode #211 - طراحی ساختار داده افزودن و جستجوی کلمه (Java) Leetcode #211 - Design Add and Search Word Data Structure - Java

  • Leetcode #297 - سریال‌سازی و دی‌سریال‌سازی درخت باینری (Java) Leetcode #297 - Serialize and Deserialize Binary Tree - Java

تئوری درخت جستجوی باینری + مسائل تمرینی Leetcode Binary Search Tree Theory + Leetcode Practice Problems

  • مقدمه‌ای بر درخت‌های جستجوی باینری Introduction To Binary Search Trees

  • درخت جستجوی باینری متوازن ارتفاع (Height Balanced BST) Height Balanced BST

  • درج یک گره جدید در درخت جستجوی باینری Inserting A New Node in Binary Search Tree

  • درست و پیش‌دانسته (Inorder Successor and Predecessor) Inorder Successor And Predecessor

  • حذف یک گره در درخت جستجوی باینری Deleting A Node In Binary Search Tree

  • Leetcode #230 - $k$-امین کوچک‌ترین عنصر در BST (Java) Leetcode #230 - Kth Smallest Element In BST - Java

  • Leetcode #98 - اعتبارسنجی درخت جستجوی باینری (Java) Leetcode #98 - Validate Binary Search Tree - Java

  • Leetcode #235 - پایین‌ترین جد مشترک در درخت جستجوی باینری (Java) Leetcode #235 - Lowest Common Ancestor Of A Binary Search Tree - Java

نمایش نظرات

آموزش ساختارهای داده پیشرفته، الگوها و تکنیک‌های بازگشتی
جزییات دوره
15h 25m
74
(آخرین آپدیت)
36
- از 5
دارد
دارد
دارد
Chris Croft
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Chris Croft Chris Croft

مربی مدیریت، سخنران، نویسنده