مطالب پیشنهادی از سراسر وب

آموزش کامل الگوریتم ها و ساختارهای داده (CodeWithMosh) - بخش 3

دسته بندی ها: آموزش های ویژه ، علم داده (Data Science) ، آموزش های Code with Mosh

آیا تا به حال به مطالعه علم کامپیوتر پرداخته اید اما هیچ وقت مفهوم پیچیده موضوع ساختارهای داده و الگوریتم را متوجه نشده اید؟

یا شاید شما یک برنامه نویس خودآموخته هستید که دانش کمی درباره این موضوع دارید. یا شاید شما در مصاحبه شغلی موفق نشده اید.

بنابراین چرا ساختارهای داده این روزها اهمیت دارند؟

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

یک موضوع پیچیده را ساده می سازد...

به همین دلیل این دوره برای شما تدوین شده است تا ساختارهای داده و الگوریتم های مختلف را بهتر درک کنید.

در پایان این دوره...

شما قادر خواهید بود:

  • مصاحبه کدنویسی بعدی خود را انجام دهید
  • بهتر و سریعتر کد بنویسید
  • یک توسعه دهنده بهتر شوید
  • مهارت های حل مسئله خود را بهبود بخشید
  • بر اصول علم کامپیوتر مسلط شوید
  • تمام ساختارهای داده اصلی را از ابتدا پیاده سازی کنید
  • بر ده ها الگوریتم محبوب مسلط شوید.

این دوره سومین سری از این دوره است. در قسمت اول، ساختار داده های خطی (آرایه ها، لیست های پیوندی، پشته ها ، صف ها و جداول Hash) را پوشش داده ایم. در بخش دوم ساختارهای داده غیرخطی (درختان باینری، AVL Trees ،Heaps ،Tries و نمودار) را پوشش دادیم. قسمت 3 الگوریتم های اضافی را که هر توسعه دهنده باید بداند، بررسی می کند.

در این بخش با مباحث زیر آشنا می شوید:

  • جستجوی الگوریتم ها
  • مرتب سازی الگوریتم ها
  • الگوریتم های دستکاری رشته

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

این دوره برای چه کسی مناسب است؟

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

پیش نیازها

در این دوره از جاوا برای آموزش مفاهیم استفاده شده است ولی شما می توانید از هر زبان دیگری استفاده کنید. تمرکز ما بر روی ساختارهای داده و الگوریتم ها و نه ابزارها و زبان های برنامه نویسی دیگر است. تمام آنچه شما برای گذراندن این دوره نیاز دارید برخی مهارت های اساسی برنامه نویسی هستند. اگر متغیرها، حلقه ها و conditional statements را می شناسید، خوب یک امتیاز محسوب می گردد.

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

  • شروع کار
    • مقدمه
    • کد منبع
  • مرتب سازی الگوریتم ها
    • مقدمه
    • مرتب سازی حبابی
    • مرتب سازی حبابی - پیاده سازی
    • Selection Sort
    • Selection Sort - پیاده سازی
    • Insertion Sort
    • Insertion Sort - پیاده سازی
    • Merge Sort
    • Merge Sort - پیاده سازی
    • Quick Sort 
    • پارتیشن بندی
    • مرتب سازی سریع - پیاده سازی
    • مرتب سازی شمارش 
    • مرتب سازی شمارش - پیاده سازی
    • Bucket Sort
    • Bucket Sort - پیاده سازی
  • جستجوی الگوریتم ها
    • مقدمه 
    • جستجوی خطی
    • جستجوی خطی- پیاده سازی
    • جستجوی باینری
    • جستجوی باینری - پیاده سازی - پیاده سازی بازگشتی
    • جستجوی باینری - پیاده سازی تکراری
    • Ternary Search
    • Ternary Search - پیاده سازی
    • Jump Search
    • Jump Search - پیاده سازی
    • Exponential Search
    • Exponential Search - پیاده سازی
  • الگوریتم های دستکاری رشته
    • مقدمه 
    • تمرینات
    • متدهای جاوا مفید
    • Count Vowels
    • معکوس کردن یک رشته
    • چرخش ها
    • حذف Duplicates 
    • پرتکرارترین Char 
    • Sentence Capitalization
    • Anagrams- با استفاده از مرتب سازی
    • Anagrams- با استفاده از هیستوگرام
    • Palindrome 
    • جمع بندی دوره

سایر قسمت های این دوره:

 

آموزش کامل الگوریتم ها و ساختارهای داده - مقدمه

 

آموزش کامل الگوریتم ها و ساختارهای داده - Bubble Sort

 

آموزش کامل الگوریتم ها و ساختارهای داده - Bubble Sort - پیاده سازی

 

آموزش کامل الگوریتم ها و ساختارهای داده - Selection Sort

 

آموزش کامل الگوریتم ها و ساختارهای داده - Selection Sort - پیاده سازی

 

آیا این نوشته را دوست داشتید؟
CodeWithMosh - The Ultimate Data Structures and Algorithms: Part 3 Publisher:CodeWithMosh Author:Mosh Hamedani Duration:3 Hours Level:BEGINNER

Studied Computer Science - but never really understood the complex topic of data structures and algorithms?

Or maybe you’re a self-taught programmer, with little to no knowledge of this important topic.

Or perhaps you failed a job interview because you couldn't answer basic data structure and algorithm questions.

So, why are data structures so important these days?

Data structures and algorithms are patterns for solving problems. Developers who know more about data structures and algorithms are better at solving problems. That’s why companies like Google, Microsoft and Amazon always include interview questions on data structures and algorithms. They want to assess your problem-solving skills. They don't care how many programming languages and frameworks you're familiar with.

A complex topic made simple

That’s why I made this course. I want to demystify data structures and algorithms once and for all.

I remember being hopelessly confused when my college lecturer tried to teach it, many moons ago. So I had to teach myself. Now I’m an expert on the topic, and I want to save you the dozens of hours I wasted at the library trying to wrap my head around it.

By the end of this course…

You’ll be able to:

  • Ace your next coding interview
  • Write better, faster code
  • Become a better developer
  • Improve your problem solving skills
  • Master computer science fundamentals
  • Implement all the essential data structures from scratch
  • Master dozens of popular algorithms

What you're going to learn
This course is the third of a series. In the first part, we covered the linear data structures (Arrays, Linked Lists, Stacks, Queues and Hash Tables). In the second part, we covered the non-linear data structures (Binary Trees, AVL Trees, Heaps, Tries and Graphs). Part 3 explores additional algorithms that every developer must study.

Here's what you're going to learn in this part:

Searching Algorithms
Sorting Algorithms
String Manipulation Algorithms

This is the most comprehensive data structures and algorithms series online. Every example and exercise is picked from popular interview questions asked by Google, Microsoft, Amazon and other big companies.

Who is this course for?

  • Anyone preparing for a coding job interview
  • Computer science students whose lecturers failed to explain the topics
  • Self-taught developers who missed out on a computer science degree
  • Anyone who wants to become a better developer

Requirements

In this course, I use Java to teach the concepts but you can apply these concepts in any programming language. Our focus is on data structures and algorithms, not programming languages and tools.

All you need to take this course are some basic programming skills. If you know variables, loops, and conditional statements, you're good. If you need a quick refresher to get up to speed with Java syntax, you can watch the first part of my Java series.

Ideally, you should have taken the first two parts of this series as this part progresses faster and assumes the knowledge of the topics covered in the previous parts.

Course Curriculum

  • Getting Started 
    • 1- Introduction (0:45)
    • 2- Course Code
  • Sorting Algorithms 
    • 1- Introduction (1:00)
    • 2- Bubble Sort (3:10)
    • 3- Bubble Sort- Implementation (6:24)
    • 4- Selection Sort (2:41)
    • 5- Selection Sort- Implementation (3:23)
    • 6- Insertion Sort (3:58)
    • 7- Insertion Sort- Implementation (2:28)
    • 8- Merge Sort (5:06)
    • 9- Merge Sort- Implementation (8:04)
    • 10- Quick Sort (3:14)
    • 11- Partitioning (6:01)
    • 12- Quick Sort- Implementation (9:00)
    • 13- Counting Sort (4:08)
    • 14- Counting Sort- Implementation (2:48)
    • 15- Bucket Sort (4:18)
    • 16- Bucket Sort- Implementation (7:07)
  • Searching Algorithms 
    • 1- Introduction (0:46)
    • 2- Linear Search (1:04)
    • 3- Linear Search- Implementation (1:36)
    • 4- Binary Search (3:47)
    • 5- Binary Search- Recursive Implementation (4:52)
    • 6- Binary Search- Iterative Implementation (2:14)
    • 7- Ternary Search (3:27)
    • 8- Ternary Search- Implementation (4:12)
    • 9- Jump Search (3:16)
    • 10- Jump Search- Implementation (3:54)
    • 11- Exponential Search (2:47)
    • 12- Exponential Search- Implementation (2:55)
  • String Manipulation Algorithms 
    • 1- Introduction (0:35)
    • 2- Exercises
    • 3- Useful Java Methods
    • 4- Count Vowels (4:49)
    • 5- Reverse a String (5:40)
    • 6- Reverse Words (6:13)
    • 7- Rotations (5:48)
    • 8- Remove Duplicates (3:12)
    • 9- Most Repeated Char (7:12)
    • 10- Sentence Capitalization (6:38)
    • 11- Anagrams- Using Sorting (6:07)
    • 12- Anagrams- Using Histogramming (6:18)
    • 13- Palindrome (4:25)
    • 14- Course Wrap Up (1:06)

پیشنهاد آموزش مرتبط در فرادرس

خرید لینک های دانلود
  • حجم فایل: 3.2GB
  • زبان: انگلیسی
  • زیرنویس انگلیسی: ندارد
  • قیمت: 6000 تومان
  • آموزش کامل الگوریتم ها و ساختارهای داده (CodeWithMosh) - بخش 3 یک محصول ویژه است و دریافت لینک های دانلود آن با پرداخت هزینه امکان پذیر است. اطلاعات بیشتر