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

دانلود Foundations of Data Structures & Algorithms

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

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

معرفی دوره Course Introduction

  • معرفی تخصصی دوره Introduction to Specialization

  • چگونه مهارت‌های حل مسئله را بهبود دهیم؟ How to improve problem-solving skills?

  • چگونه در مصاحبه سریع کدنویسی کنیم؟ How To Code Fast in an interview!

  • چگونه در مصاحبه‌های ساختمان داده و الگوریتم موفق شویم؟ How to ace your DSA Interview?

تحلیل پیچیدگی زمانی و فضایی Time & Space Complexity Analysis

  • مقدمه‌ای بر پیچیدگی زمانی و فضایی Introduction to Time & Space Complexity

  • نماد Big O چیست؟ What is Big O Notation?

  • مثال اول محاسبه پیچیدگی زمانی Calculating Time Complexity Example 1

  • بررسی قابل قبول بودن نماد Big O در مصاحبه‌ها Checking If Big O Notation Is Acceptable in Interviews

  • مثال دوم محاسبه پیچیدگی زمانی Calculating Time Complexity Example 2

  • باورهای غلط درباره پیچیدگی زمانی Myth About Time Complexity

  • محاسبه پیچیدگی زمانی موارد بازگشتی Calculating Time Complexity of Recursive Cases

  • مثال دوم پیچیدگی زمانی بازگشتی Recursive Time Complexity Example 2

  • نمایش زنده پیچیدگی زمانی Time Complexity Live Demonstration

  • مقدمه‌ای بر پیچیدگی فضایی Introduction To Space Complexity

  • محاسبه پیچیدگی فضایی Calculating Space Complexity

  • مثال اول پیچیدگی فضایی بازگشتی Recursive Space Complexity Example 1

  • مثال دوم پیچیدگی فضایی بازگشتی Recursive Space Complexity Example 2

تئوری آرایه‌ها + مسائل تمرینی آرایه از Leetcode Arrays Theory + Array Practice Problems from Leetcode

  • آرایه‌ها چیستند و چرا بسیار سریع هستند؟ What are arrays and why are they so fast!

  • معایب استفاده از آرایه‌ها Drawbacks of using Arrays

  • آرایه‌های با اندازه متغیر چگونه کار می‌کنند؟ How do resizable arrays work?

  • متدهای مهم آرایه در جاوا بخش اول Important Array Methods In Java Part 1

  • متدهای مهم آرایه در جاوا بخش دوم Important Array Methods In Java Part 2

  • متدهای مهم آرایه در جاوا بخش سوم Important Array Methods In Java Part 3

  • مسئله تمرینی ۱: حداکثر مجموع زیرآرایه Practice Problem 1 - Maximum Sum Subarray

  • مسئله تمرینی ۲: بهترین زمان برای خرید و فروش سهام Practice Problem 2 - Best Time To Buy And Sell A Stock

  • مسئله تمرینی ۳: حداکثر حاصل‌ضرب زیرآرایه Practice Problem 3 - Maximum Product Subarray

  • مسئله تمرینی ۴: حاصل‌ضرب آرایه به جز خود Practice Problem 4 - Product Of Array Except Self

  • مسئله تمرینی ۵: چرخش آرایه Practice Problem 5 - Rotate Array

  • مسئله تمرینی ۶: حداکثر تعداد یک‌های متوالی Practice Problem 6 - Max Consecutive Ones

  • مسئله تمرینی ۷: سودوکو معتبر Practice Problem 7 - Valid Sudoku

  • مسئله تمرینی ۸: نزدیک‌ترین نقاط K به مبدأ Practice Problem 8 - K Closest Points To Origin

  • مسئله تمرینی ۹: رمزگذاری و رمزگشایی رشته‌ها Practice Problem 9 - Encode and Decode Strings

تئوری مرتب‌سازی + مسائل تمرینی مرتب‌سازی Sorting Theory + Sorting Practice Problems

  • چرا مرتب‌سازی مهم است؟ Why is sorting important?

  • مقدمه‌ای بر مرتب‌سازی Introduction To Sorting

  • تئوری مرتب‌سازی حبابی Bubble Sort Theory

  • پیاده‌سازی مرتب‌سازی حبابی Bubble Sort Implementation

  • تئوری مرتب‌سازی انتخابی Selection Sort Theory

  • پیاده‌سازی مرتب‌سازی انتخابی Selection Sort Implementation

  • تئوری مرتب‌سازی درجی Insertion Sort Theory

  • مرتب‌سازی ادغامی بخش اول: ادغام دو آرایه مرتب Merge Sort Part 1 - How to merge two sorted arrays

  • مرتب‌سازی ادغامی بخش دوم: پیاده‌سازی ادغام دو آرایه مرتب Merge Sort Part 2 - Merging Two Sorted Arrays Implementation

  • مرتب‌سازی ادغامی بخش سوم: تئوری Merge Sort Part 3 - Theory

  • پیاده‌سازی مرتب‌سازی ادغامی Merge Sort Implementation

  • مرتب‌سازی سریع بخش اول: الگوریتم افراز Quick Sort Part 1 - Partitioning Algorithm

  • مرتب‌سازی سریع بخش دوم: درک نحوه عملکرد Quick Sort Part 2 - Understanding how quick sort works

  • مرتب‌سازی شمارشی بخش اول: تئوری Counting Sort Part 1 - Theory

  • مرتب‌سازی شمارشی: پیاده‌سازی Counting Sort - Implementation

  • چگونه مرتب‌سازی شمارشی را پایدار کنیم؟ How is counting sort made stable?

  • مرتب‌سازی رادیکسی: تئوری Radix Sort - Theory

  • مرتب‌سازی رادیکسی: پیاده‌سازی Radix Sort - Implementation

  • تمرین Leetcode #283: انتقال صفرها (جاوا) Leetcode #283 - Move Zeroes - Java

  • تمرین Leetcode #75: مرتب‌سازی رنگ‌ها (جاوا) Leetcode #75 - Sort Colors - Java

  • تمرین Leetcode #169: عنصر اکثریت (جاوا) Leetcode #169 - Majority Element - Java

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

  • معایب آرایه‌ها Drawback Of Arrays

  • لیست پیوندی چیست؟ What Is Linked List

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

  • پیمایش در لیست‌های پیوندی Iterating Over Linked Lists

  • درج در لیست پیوندی Inserting In Linked List

  • حذف از ابتدای لیست پیوندی Deleting From Front In Linked List

  • لیست پیوندی دوطرفه چیست؟ What Is Doubly Linked List

  • کلاس لیست پیوندی در جاوا Linked List Class In Java

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

  • استفاده از تکرارکننده‌ها برای پیمایش Using Iterators To Iterate

  • متد Contains Contains

  • پیمایش به صورت معکوس Iterating In Reverse Order

  • متدهای افزودن در لیست پیوندی Add Methods In Linked List

  • متدهای حذف در لیست پیوندی Removal Methods In Linked Lists

  • مسئله تمرینی ۱: تقاطع دو لیست پیوندی Practice Problem 1 - Intersection Of Two Linked Lists

  • مسئله تمرینی ۲: ادغام دو لیست مرتب Practice Problem 2 - Merge Two Sorted Lists

  • مسئله تمرینی ۳: چرخه در لیست پیوندی Practice Problem 3 - Linked List Cycle

  • مسئله تمرینی ۴: معکوس کردن لیست پیوندی Practice Problem 4 - Reverse Linked List

  • مسئله تمرینی ۵: لیست پیوندی پالیندروم Practice Problem 5 - Palindrome Linked List

  • مسئله تمرینی ۶: چرخه در لیست پیوندی ۲ Practice Problem 6 - Linked List Cycle II

  • مسئله تمرینی ۷: یافتن میانه لیست پیوندی Practice Problem 7 - Find Middle Of The Linked List

  • مسئله تمرینی ۸: حذف n-امین گره از انتها Practice Problem 8 - Remove Nth Node From End Of List

  • مسئله تمرینی ۹: جمع دو عدد Practice Problem 9 - Add Two Numbers

  • مسئله تمرینی ۱۰: مرتب‌سازی مجدد لیست Practice Problem 10 - Reorder List

تئوری جدول هش + مسائل تمرینی Leetcode Hash Table Theory + Leetcode Practice Problems

  • جدول هش چیست؟ What Is Hash Table

  • جدول هش چگونه کار می‌کند؟ How does a hash table work?

  • حل برخورد در جدول هش Hash Table Collision Resolution

  • انواع جدول هش Types Of Hash Table

  • کاربرد جدول هش Hash Table Usage

  • مسئله تمرینی ۱: تشخیص تکراری Practice Problem 1 - Contains Duplicate

  • مسئله تمرینی ۲: مجموع دو عدد Practice Problem 2 - Two Sum

  • مسئله تمرینی ۳: آناگرام معتبر Practice Problem 3 - Valid Anagram

  • مسئله تمرینی ۴: گروه‌بندی آناگرام‌ها Practice Problem 4 - Group Anagrams

  • مسئله تمرینی ۵: طولانی‌ترین دنباله متوالی Practice Problem 5 - Longest Consecutive Sequence

  • مسئله تمرینی ۶: مجموع سه عدد Practice Problem 6 - Three Sum

  • مسئله تمرینی ۷: اولین عدد مثبت گم‌شده Practice Problem 7 - First Missing Positive

پشته‌ها (Stacks) Stacks

  • مقدمه‌ای بر پشته‌ها Introduction to Stacks

  • استفاده از پشته در جاوا Using Stacks In Java

  • مسئله تمرینی ۱: پرانتزهای معتبر Practice Problem 1 - Valid Parenthesis

  • مسئله تمرینی ۲: پشته حداقل (Min Stack) Practice Problem 2 - Min Stack

  • مسئله تمرینی ۳: عنصر بزرگتر بعدی ۲ Practice Problem 3 - Next Greater Element II

  • مسئله تمرینی ۴: ارزیابی عبارت پس‌وندی Practice Problem 4 - Evaluate Reverse Polish Notation

صف‌ها (Queue) Queue

  • مقدمه‌ای بر صف‌ها Introduction to Queue

  • صف چگونه پیاده‌سازی می‌شود؟ How Is Queue Implemented

  • استفاده از صف در جاوا Using Queue In Java

نمایش نظرات

آموزش مبانی ساختمان داده‌ها و الگوریتم‌ها
جزییات دوره
16h 3m
98
(آخرین آپدیت)
248
- از 5
دارد
دارد
دارد
Chris Croft
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Chris Croft Chris Croft

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