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

دانلود Data Structures and Algorithms

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: به دوره جامع ساختار داده‌ها و الگوریتم‌ها خوش آمدید! در این دوره، به بررسی اصول و تکنیک‌های حیاتی می‌پردازیم که ستون فقرات علوم کامپیوتر و توسعه نرم‌افزار را تشکیل می‌دهند. این دوره جامع، سازماندهی، ذخیره‌سازی و مدیریت بهینه داده‌ها را با استفاده از ساختارهای مختلفی مانند آرایه‌ها، لیست‌های پیوندی، پشته‌ها، صف‌ها، جداول هش، درخت‌ها و گراف‌ها بررسی می‌کند. شما خواهید آموخت که چگونه این ساختارها را در کدنویسی پیاده‌سازی کنید، عملکرد آن‌ها را بهینه نمایید و مسائل پیچیده محاسباتی را از طریق طراحی و تحلیل الگوریتم حل کنید. مفاهیم کلیدی از جمله الگوریتم‌های مرتب‌سازی مانند کوییک‌سورت (Quick Sort)، مرتب‌سازی ادغامی (Merge Sort) و مرتب‌سازی درجاتی (Insertion Sort)، الگوریتم‌های گراف شامل BFS و DFS برای پیمایش، و محاسبات کوتاه‌ترین مسیر را به طور کامل فرا خواهید گرفت. همچنین پیچیدگی‌های ساختارهای درختی مانند درخت‌های باینری و درخت‌های AVL و قدرت جداول هش برای دسترسی سریع به داده‌ها را درک خواهید کرد. این دوره بر کاربردهای واقعی، مدیریت حافظه و بهینه‌سازی عملکرد تأکید دارد و شما را به مهارت‌های حل مسئله مجهز می‌کند که برای نقش‌های علوم داده، توسعه نرم‌افزار و IT ضروری است. این دوره برای افرادی که با ساختار داده‌ها آشنا نیستند یا به دنبال ارتقای مهارت‌های محاسباتی خود هستند طراحی شده و پایه‌ای مستحکم برای مباحث پیشرفته علوم کامپیوتر فراهم می‌کند. در پایان این دوره، تفکر انتقادی، توانایی حل مسئله الگوریتمیک و درک عمیق‌تری از مدیریت داده‌ها به دست خواهید آورد که شما را قادر می‌سازد مسائل پیچیده محاسباتی را به راهکارهای الگوریتمیک بهینه تبدیل کنید.

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

کارایی الگوریتم و تحلیل مجانبی Algorithmic Efficiency and Asymptotic Analysis

  • آشنایی با مدرس: دکتر جاگات سش چالا Meet Your Instructor: Dr. Jagat Sesh Challa

  • آشنایی با مدرس: دکتر ساندارساند رامن Meet Your Instructor: Dr. Sundaresan Raman

  • معرفی بخش: کارایی الگوریتم و تحلیل مجانبی Module Introduction: Algorithmic Efficiency and Asymptotic Analysis

  • الگوریتم‌ها و ساختاردهی داده‌ها Algorithms and Data Structuring

  • کارایی الگوریتم: اندازه‌گیری تجربی Algorithmic Efficiency: Experimental Measurement

  • کارایی الگوریتم: اندازه‌گیری در زمان طراحی Algorithmic Efficiency: Design Time Measurement

  • شمارش عملیات‌های ابتدایی Counting Primitive Operations

  • تحلیل مجانبی و نماد Big Oh Asymptotic Analysis and Big-Oh Notation

  • مشتقات و موارد مشابه Big Oh Relatives of Big-Oh

  • تحلیل مجانبی مجموع پیشوندی (Prefix Sum) Asymptotic Analysis of Prefix Sum

  • اهمیت تحلیل‌های مجانبی Importance of Asymptotics

  • برنامه پایه C با حلقه‌ها Basic C Program with Loops

  • توابع و آرایه‌ها Functions and Arrays

  • ساختارها و آرایه‌ای از ساختارها Structures and Array of Structures

  • اشاره‌گرها Pointers

  • ارسال با مقدار در مقابل ارسال با ارجاع Pass by Value vs. Pass by Reference

  • تخصیص حافظه پویا: آرایه‌های تک‌بعدی Dynamic Memory Allocation: 1D Arrays

  • نشت حافظه (Memory Leak) Memory Leak

  • تخصیص حافظه پویا: آرایه‌ای از ساختارها Dynamic Memory Allocation: Array of Structures

  • برنامه پایه C با مدیریت فایل: لیست اعداد Basic C Program with File Handling: List of Numbers

  • برنامه پایه C با مدیریت فایل: داده‌های تاپل Basic C Program with File Handling: Tuple Data

  • جمع‌بندی بخش: کارایی الگوریتم و تحلیل مجانبی Module Wrap-Up: Algorithmic Efficiency and Asymptotic Analysis

ساختاردهی داده‌ها برای کارایی الگوریتم و ADTها Data Structuring for Algorithm Efficiency and ADTs

  • معرفی بخش: ساختاردهی داده‌ها برای کارایی الگوریتم و ADTها Module Introduction: Data Structuring for Algorithm Efficiency and ADTs

  • ساختاردهی و مدل‌سازی داده‌ها Data Structuring and Modelling

  • آرایه‌ها در حافظه Arrays in Memory

  • لیست‌های پیوندی Linked Lists

  • لیست‌های پیوندی: عملیات (بخش اول) Linked Lists: Operations I

  • لیست‌های پیوندی: عملیات (بخش دوم) Linked Lists: Operations II

  • پیاده‌سازی لیست‌های پیوندی: قسمت اول Linked Lists: Implementation—Part I

  • پیاده‌سازی لیست‌های پیوندی: قسمت دوم Linked Lists: Implementation—Part II

  • پیاده‌سازی لیست‌های پیوندی: قسمت سوم Linked Lists: Implementation—Part III

  • پیاده‌سازی لیست‌های پیوندی: قسمت چهارم Linked Lists: Implementation—Part IV

  • پیاده‌سازی لیست‌های پیوندی: قسمت پنجم Linked Lists: Implementation—Part V

  • لیست‌های پیوندی حلقوی و دوطرفه Circular and Doubly Linked Lists

  • تشخیص چرخه در لیست‌های پیوندی Cycle Detection in Linked Lists

  • انواع داده‌های انتزاعی (ADT) Abstract Data Types

  • ADT پشته (Stack) ADT Stack

  • ADT پشته: کاربردها ADT Stack: Applications

  • پشته مبتنی بر آرایه Array-Based Stack

  • پیاده‌سازی پشته مبتنی بر آرایه: قسمت اول Array-Based Stack: Implementation—Part I

  • پیاده‌سازی پشته مبتنی بر آرایه: قسمت دوم Array-Based Stack: Implementation—Part II

  • پشته مبتنی بر لیست پیوندی Linked-List-Based Stack

  • پیاده‌سازی پشته مبتنی بر لیست پیوندی: قسمت اول Linked-List-Based Stack: Implementation—Part I

  • پیاده‌سازی پشته مبتنی بر لیست پیوندی: قسمت دوم Linked-List-Based Stack: Implementation—Part II

  • خلاصه اصول ADTها Principles of ADTs Summarized

  • ADT صف (Queue) و کاربردهای آن ADT Queue and its Applications

  • صف مبتنی بر آرایه Array-Based Queue

  • صف مبتنی بر لیست پیوندی Linked-List-Based Queue

  • جمع‌بندی بخش: ساختاردهی داده‌ها برای کارایی الگوریتم و ADTها Module Wrap-Up: Data Structuring for Algorithm Efficiency and ADTs

مرتب‌سازی و جستجو Sorting and Searching

  • معرفی بخش: مرتب‌سازی و جستجو Module Introduction: Sorting and Searching

  • تقسیم و conquer و بازگشتی (Recursion) Divide and Conquer, and Recursion

  • بیشینه آرایه به صورت بازگشتی (recursive arrayMax) Recursive arrayMax

  • پیچیدگی زمانی بیشینه آرایه بازگشتی Recursive arrayMax: Time Complexity

  • مرتب‌سازی درجاتی: نسخه بازگشتی (بخش اول) Insertion Sort: Recursive Version—Part I

  • مرتب‌سازی درجاتی: نسخه بازگشتی (بخش دوم) Insertion Sort: Recursive Version—Part II

  • پیچیدگی زمانی مرتب‌سازی درجاتی بازگشتی: بخش اول Recursive Insertion Sort: Time Complexity—Part I

  • پیچیدگی زمانی مرتب‌سازی درجاتی بازگشتی: بخش دوم Recursive Insertion Sort: Time Complexity—Part II

  • پیاده‌سازی مرتب‌سازی درجاتی بازگشتی در C و زمان اجرای آن: بخش اول Implementing Recursive Insertion Sort in C and Its Running Time: Part I

  • پیاده‌سازی مرتب‌سازی درجاتی بازگشتی در C و زمان اجرای آن: بخش دوم Implementing Recursive Insertion Sort in C and Its Running Time: Part II

  • مرتب‌سازی درجاتی: نسخه تکراری (Iterative) Insertion Sort: Iterative Version

  • مرتب‌سازی ادغامی: مفهوم Merge Sort: Intuition

  • عملیات ادغام در مرتب‌سازی ادغامی: بخش اول Merge Operation in Merge Sort: Part I

  • عملیات ادغام در مرتب‌سازی ادغامی: بخش دوم Merge Operation in Merge Sort: Part II

  • مرتب‌سازی ادغامی: پیچیدگی زمانی Merge Sort: Time Complexity

  • پیچیدگی فضای مرتب‌سازی ادغامی و درجاتی: بخش اول Space Complexities of Merge and Insertion Sort: Part I

  • پیچیدگی فضای مرتب‌سازی ادغامی و درجاتی: بخش دوم Space Complexities of Merge and Insertion Sort: Part II

  • مقایسه مرتب‌سازی ادغامی و درجاتی Merge vs. Insertion Sort

  • پیاده‌سازی مرتب‌سازی ادغامی و زمان اجرای آن Merge Sort Implementation and Its Running Time

  • جستجوی خطی Linear Search

  • جستجوی باینری (دوتایی) Binary Search

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

  • جمع‌بندی بخش: مرتب‌سازی و جستجو Module Wrap-Up: Sorting and Searching

مرتب‌سازی‌های پیشرفته More Sorting

  • معرفی بخش: مرتب‌سازی‌های پیشرفته Module Introduction: More Sorting

  • کوییک سورت (Quick Sort): مفهوم Quick Sort: Intuition

  • کوییک سورت: الگوریتم Quick Sort: Algorithm

  • کوییک سورت: پیچیدگی زمانی (بخش اول) Quick Sort: Time Complexity—Part I

  • کوییک سورت: پیچیدگی زمانی (بخش دوم) Quick Sort: Time Complexity—Part II

  • تکنیک‌های انتخاب نقطه اتکای (Pivot) Pivot Selection Techniques

  • پیاده‌سازی کوییک سورت Quick Sort Implementation

  • مرتب‌سازی لیست‌های کوچک Sorting Smaller Lists

  • مقایسه الگوریتم‌های مرتب‌سازی مبتنی بر مقایسه Comparing Comparison-Based Sorting Algorithms

  • حد پایین مرتب‌سازی‌های مبتنی بر مقایسه Lower Bound on Comparison-Based Sorting

  • مرتب‌سازی سطل (Bucket Sort) Bucket Sort

  • پایداری در مرتب‌سازی Stability of Sorting

  • مرتب‌سازی رادیکسی (Radix Sort) Radix Sort

  • جمع‌بندی بخش: مرتب‌سازی‌های پیشرفته Module Wrap-Up: More Sorting

دیکشنری‌ها، جداول هش و درخت‌های باینری Dictionaries, Hash Tables, and Binary Trees

  • معرفی بخش: دیکشنری‌ها، جداول هش و درخت‌های باینری Module Introduction: Dictionaries, Hash Tables, and Binary Trees

  • ADT دیکشنری Dictionary ADT

  • یک مورد کاربردی از دیکشنری A Dictionary Case

  • جداول هش با زنجیره‌سازی خطی Hash Tables with Linear Chaining

  • تحلیل هشینگ با زنجیره‌سازی خطی Analysis of Hashing with Linear Chaining

  • توابع هش: نقشه‌های کد هش Hash Functions: Hash-Code Maps

  • توابع هش: نقشه‌های فشرده‌سازی Hash Functions: Compression Maps

  • آدرس‌دهی باز با کاوش خطی Open Addressing with Linear Probing

  • هشینگ دوگانه Double Hashing

  • درخت‌ها: تعاریف و مثال‌ها Trees: Definitions and Examples

  • درخت باینری همراه با مثال Binary Tree with Examples

  • انواع و ویژگی‌های درخت‌های باینری Types and Properties of Binary Trees

  • ADT درخت Tree ADT

  • پیمایش درخت‌ها Tree Traversals

  • ساخت درخت‌های باینری از طریق پیمایش Building Binary Trees from Tree Traversals

  • جمع‌بندی بخش: دیکشنری‌ها، جداول هش و درخت‌های باینری Module Wrap-Up: Dictionaries, Hash Tables, and Binary Trees

درخت‌های جستجوی باینری و درخت‌های AVL Binary Search Trees and AVL Trees

  • معرفی بخش: درخت‌های جستجوی باینری و درخت‌های AVL Module Introduction: Binary Search Trees and AVL Trees

  • درخت‌های جستجوی باینری (BST): مفهوم و جستجو Binary Search Trees: Intuition and Search

  • مقادیر مینیمم، ماکزیمم، جانشین و پیش‌راند در BSTها Min, Max, Successor and Predecessor in BSTs

  • درج در BST BST Insertion

  • حذف در BST BST Deletion

  • مرتب‌سازی BST BST Sort

  • BST: خلاصه پیچیدگی‌های زمانی BST: Summary of Time Complexities

  • پیاده‌سازی BST: بخش اول BST Implementation: Part I

  • پیاده‌سازی BST: بخش دوم BST Implementation: Part II

  • پیاده‌سازی BST: بخش سوم BST Implementation: Part III

  • درخت‌های AVL: انگیزه، مفهوم و مثال‌ها AVL Trees: Motivation, Intuition, and Examples

  • درخت AVL: ساختار AVL Tree: Structure

  • درج در درخت AVL: بخش اول AVL Tree: Insertion—Part I

  • درج در درخت AVL: بخش دوم AVL Tree: Insertion—Part II

  • درج در درخت AVL: بخش سوم AVL Tree: Insertion—Part III

  • درج در درخت AVL: بخش چهارم AVL Tree: Insertion—Part IV

  • حذف در درخت AVL: بخش اول AVL Tree: Deletion—Part I

  • حذف در درخت AVL: بخش دوم AVL Tree: Deletion—Part II

  • حذف در درخت AVL: بخش سوم AVL Tree: Deletion—Part III

  • پیچیدگی‌های زمانی درخت AVL Time Complexities of AVL Tree

  • مزایای درخت AVL: خلاصه Benefits of AVL Tree: Summary

  • جمع‌بندی بخش: درخت‌های جستجوی باینری و درخت‌های AVL Module Wrap-Up: Binary Search Trees and AVL Trees

صف‌های اولویت‌دار و تری‌ها (Tries) Priority Queues and Tries

  • معرفی بخش: صف‌های اولویت‌دار و تری‌ها Module Introduction: Priority Queues and Tries

  • صف‌های اولویت‌دار: انگیزه Priority Queues: Motivation

  • هیپ (Heap) به عنوان صف اولویت‌دار Heap as a Priority Queue

  • پیاده‌سازی یک هیپ Implementing a Heap

  • درج در هیپ Insertion in a Heap

  • حذف مینیمم و Heapify در هیپ Delete Min, Heapify in a Heap

  • ساخت هیپ و پیچیدگی زمانی عملیات‌های هیپ Building Heap and Time Complexity of Heap Operations

  • مرتب‌سازی هیپ (Heap Sort) Heap Sort

  • پیاده‌سازی هیپ‌ها: بخش اول Implementing Heaps: Part I

  • پیاده‌سازی هیپ‌ها: بخش دوم Implementing Heaps: Part II

  • پیاده‌سازی هیپ‌ها: بخش سوم Implementing Heaps: Part III

  • تری‌های استاندارد (Standard Tries) Standard Tries 

  • تری‌های فشرده (Compressed Tries) Compressed Tries

  • کاربردهای تری‌ها Applications of Tries

  • درخت‌های پسوند (Suffix Trees) Suffix Trees

  • کاربردهای درخت‌های پسوند Suffix Trees Applications

  • فشرده‌سازی فایل با تری کدگذاری File Compression with an Encoding Trie

  • فشرده‌سازی بهینه با تری کدگذاری هافمن Optimal Compression with Huffman Encoding Trie

  • استفاده از صف‌های اولویت‌دار برای پیاده‌سازی تری‌های هافمن Using Priority Queues to Implement Huffman Encoding Tries

  • جمع‌بندی بخش: صف‌های اولویت‌دار و تری‌ها Module Wrap-Up: Priority Queues and Tries

گراف‌ها و پیمایش گراف Graphs and Graph Traversals

  • معرفی بخش: گراف‌ها و پیمایش گراف Module Introduction: Graphs and Graph Traversals

  • گراف‌ها و کاربردها Graphs and Applications

  • اصطلاحات گراف: بخش اول Graph Terminologies: Part I

  • اصطلاحات گراف: بخش دوم Graph Terminologies: Part II

  • ADT گراف Graph ADT

  • ساختارهای داده برای گراف، لیست یال‌ها Data Structures for Graph, Edge List

  • لیست مجاورت و ماتریس مجاورت Adjacency List and Adjacency Matrix

  • مقایسه نمایش‌های گراف Comparing Graph Representations

  • جستجوی اول سطح (BFS): مفهوم همراه با مثال Breadth-First Search: Intuition with an Example

  • الگوریتم BFS و زمان اجرا BFS Algorithm and Running Time

  • درخت BFS BFS Tree

  • کاربردهای BFS: مؤلفه‌های متصل BFS Applications: Connected Components

  • بررسی گراف دوپارتی: بخش اول Checking for a Bipartite Graph: Part I

  • بررسی گراف دوپارتی: بخش دوم Checking for a Bipartite Graph: Part II

  • پیاده‌سازی BFS با استفاده از لیست مجاورت: بخش اول BFS Implementation Using Adjacency List: Part I

  • پیاده‌سازی BFS با استفاده از لیست مجاورت: بخش دوم BFS Implementation using Adjacency List: Part II

  • جمع‌بندی بخش: گراف‌ها و پیمایش گراف Module Wrap-Up: Graphs and Graph Traversals

جستجوی اول عمق و MST در گراف‌های وزن‌دار Depth-First Search and MST in Weighted Graphs

  • معرفی بخش: جستجوی اول عمق و MST در گراف‌های وزن‌دار Module Introduction: Depth-First Search and MST in Weighted Graphs

  • جستجوی اول عمق (DFS): مفهوم و کاربردها Depth First Search: Intuition and Applications

  • مثال‌های DFS و زیرگراف پیش‌راند DFS Examples and Predecessor Subgraph

  • الگوریتم DFS و پیچیدگی DFS Algorithm and Complexity

  • اتصال دوگانه (Biconnectivity) Biconnectivity

  • DFS در گراف‌های جهت‌دار DFS in a Directed Graph

  • تشخیص چرخه در گراف جهت‌دار Detecting Cycles in a Directed Graph

  • ترتیب توپولوژیک Topological Ordering

  • مؤلفه‌های شدیداً متصل در گراف جهت‌دار Strongly Connected Components in a Directed Graph

  • پیاده‌سازی تکراری DFS با لیست مجاورت Iterative DFS Implementation Using Adjacency List

  • پیاده‌سازی بازگشتی DFS با لیست مجاورت Recursive DFS Implementation Using Adjacency List

  • درخت پوشای کمینه (MST): مفهوم و کاربردها Minimum Spanning Tree: Intuition and Applications

  • درخت پوشای کمینه: ویژگی‌ها Minimum Spanning Tree: Properties

  • الگوریتم MST کروسکال: نمایش Kruskal’s MST Algorithm: Illustration

  • الگوریتم MST کروسکال: شبه‌کد Kruskal’s MST Algorithm: Pseudo-Code

  • الگوریتم MST کروسکال: پیچیدگی زمانی Kruskal’s MST Algorithm: Time Complexity

  • ساختار داده Union Find Union-Find Data Structure

  • بهبود پیچیدگی زمانی الگوریتم کروسکال Improved Time Complexity of Kruskal’s Algorithm

  • جمع‌بندی بخش: جستجوی اول عمق و MST در گراف‌های وزن‌دار Module Wrap-Up: Depth-First Search and MST in Weighted Graphs

الگوریتم MST پرایم و کوتاه‌ترین مسیر از منبع واحد Prim’s MST Algorithm and Single-Source Shortest Paths

  • معرفی بخش: الگوریتم MST پرایم و کوتاه‌ترین مسیر از منبع واحد Module Introduction: Prim’s MST Algorithm and Single Source Shortest Paths

  • الگوریتم MST پرایم: نمایش Prim’s MST Algorithm: Illustration

  • الگوریتم MST پرایم: شبه‌کد و پیچیدگی زمانی Prim’s MST Algorithm: Pseudo-Code and Time Complexity

  • کوتاه‌ترین مسیرها در گراف وزن‌دار: مفهوم و ویژگی‌ها Shortest Paths in a Weighted Graph: Intuition and Properties 

  • کوتاه‌ترین مسیر از منبع واحد: رویکرد Brute Force Single Source Shortest Paths: Brute Force Approach

  • الگوریتم SSSP دایکسترا: مفهوم و نمایش Dijkstra’s SSSP Algorithm: Intuition and Illustration

  • الگوریتم SSSP دایکسترا: شبه‌کد و پیچیدگی Dijkstra’s SSSP Algorithm: Pseudo-Code and Complexity

  • پیاده‌سازی الگوریتم SSSP دایکسترا: بخش اول Implementing Dijkstra’s SSSP Algorithm: Part I

  • پیاده‌سازی الگوریتم SSSP دایکسترا: بخش دوم Implementing Dijkstra’s SSSP Algorithm: Part II

  • پیاده‌سازی الگوریتم SSSP دایکسترا: بخش سوم Implementing Dijkstra’s SSSP Algorithm: Part III

  • پیاده‌سازی الگوریتم SSSP دایکسترا: بخش چهارم Implementing Dijkstra’s SSSP Algorithm: Part IV

  • محدودیت‌های الگوریتم SSSP دایکسترا Limitations of Dijkstra’s SSSP Algorithm

  • الگوریتم SSSP بلمن-فورد Bellman-Ford's SSSP Algorithm

  • جمع‌بندی بخش: الگوریتم MST پرایم و کوتاه‌ترین مسیر از منبع واحد Module Wrap-Up: Prim’s MST Algorithm and Single Source Shortest Paths

نمایش نظرات

آموزش ساختار داده‌ها و الگوریتم‌ها
جزییات دوره
78h 46m
194
(آخرین آپدیت)
2,354
- از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar