آموزش ساختار داده ها و الگوریتم ها در جاوا - مصاحبه های Ace FAANG!

Data structures & algorithms in Java - Ace FAANG interviews!

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: الگوریتم ها و ساختارهای داده + پیاده سازی در جاوا | پیچیدگی زمانی و پیچیدگی فضا | مثال‌های Leetcode درک، پیاده‌سازی و استفاده از انواع ساختار داده‌ها قادر به تصمیم‌گیری در مورد اینکه کدام ساختار داده می‌تواند برای حل یک مسئله یا بهینه‌سازی یک برنامه کاربردی استفاده شود درک، پیاده‌سازی و استفاده از الگوریتم‌های مختلف نحوه حل مسائل کدگذاری در مصاحبه‌های فنی نحوه محاسبه فضا و پیچیدگی های زمانی برای کد شما پیش نیازها: دانش برنامه نویسی پایه جاوا

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


ما همچنین چالش‌های کدنویسی را از Leetcode حل خواهیم کرد تا ساختار داده‌ها و دانش الگوریتم‌ها را تقویت کنیم و توضیح دهیم که چگونه می‌توان از آنها برای حل مشکلات کدنویسی به طور مؤثر استفاده کرد.


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


در طول این دوره، همه چیزهایی را که برای تسلط بر ساختارهای داده و الگوریتم ها نیاز دارید، از جمله:

پوشش خواهیم داد.
  • نماد O بزرگ (پیچیدگی زمانی و پیچیدگی فضا)

  • آرایه ها

  • لیست های پیوندی

  • پشته ها

  • انبوه

  • صف ها

  • نقشه ها

  • تلاش می کند

  • درختان (و الگوریتم‌های پیمایش درخت)

  • نمودارها

  • اولین جستجوی عرض و اولین جستجوی عمقی

  • جستجوی خطی

  • جستجوی باینری

  • مرتب‌سازی حبابی

  • مرتب سازی سریع

  • مرتب‌سازی انتخابی

  • مرتب سازی درج

  • ادغام مرتب سازی

  • بازگشت

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



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

معرفی Introduction

  • معرفی Introduction

  • الگوریتم چیست What is an algorithm

  • ساختار داده چیست؟ What are Data structures

  • چرا برنامه نویسان به الگوریتم ها و ساختارهای داده نیاز دارند؟ Why programmers need algorithms and data structures

BigO Notation - پیچیدگی زمان و مکان BigO Notation - time and space complexity

  • پیچیدگی زمانی Time complexity

  • پیچیدگی فضا Space complexity

  • مسابقه پیچیدگی های زمان و مکان Time and space complexities quiz

آرایه Array

  • مقدمه ای بر آرایه ها Introduction to arrays

  • نمونه آرایه ها در جاوا Arrays example in Java

  • زمان استفاده از آرایه ها When to use arrays

  • آرایه های دو بعدی Two dimentional arrays

  • مثال آرایه دو بعدی در جاوا Two dimensional array example in Java

  • پیچیدگی زمانی عملیات آرایه Time complexity of array's operations

  • چالش کدنویسی آرایه (با راه حل) Array's coding challenge (with solution)

  • آزمون آرایه ها Arrays quiz

لیست پیوندی Linked list

  • مقدمه ای بر لیست های پیوندی Introduction to linked lists

  • انواع لیست های پیوندی Types of linked lists

  • عملیات لیست پیوندی و پیچیدگی زمانی آنها Linked list's operations and their time complexity

  • پیاده سازی لیست پیوندی در جاوا Linked list implementation in Java

  • آرایه ها در مقابل لیست های پیوندی و زمان استفاده از هر کدام Arrays vs linked lists and when to use each

  • چالش کدنویسی لیست پیوندی (با راه حل) Linked list's coding challenge (with solution)

  • مسابقه لیست پیوندی Linked list's quiz

پشته Stack

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

  • اجرای پشته در جاوا Stack implementation in Java

  • پیچیدگی زمانی عملیات پشته Stack's operations time complexity

  • چالش کدنویسی Stack (با راه حل) Stack's coding challenge (with solution)

  • مسابقه پشته Stack's quiz

صف Queue

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

  • اجرای صف در جاوا Queue implementation in Java

  • پیچیدگی زمان عملیات صف Queue's operations time complexity

  • چالش کدنویسی صف (با راه حل) Queue's coding challenge (with solution)

  • مسابقه صف Queue's quiz

هاشمپ Hashmap

  • مقدمه ای بر هشمپ Introduction to hashmaps

  • پیچیدگی زمانی عملیات هاشمپ Hashmap's operations time complexity

  • زمان استفاده از هشمپ When to use hashmaps

  • مورد استفاده هاشمپ در جاوا Hashmap usecase in Java

  • چالش کدنویسی هاشمپ (با راه حل) Hashmap's coding challenge (with solution)

  • مسابقه هاشمپ Hashmap's quiz

درخت Tree

  • آشنایی با درختان Introduction to trees

  • انواع درخت Types of tree

  • عمق درخت Tree's depth

  • الگوریتم های پیمایش درخت Tree's traversal algorithms

  • پیاده سازی درخت و الگوریتم های پیمایش آن در جاوا Implementation of the tree and it's traversal algorithms in Java

  • چالش کدنویسی درخت (با راه حل) Tree's coding challenge (with solution)

  • مسابقه درخت Tree's quiz

پشته Heap

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

  • پیاده سازی Heap در جاوا Heap implementation in Java

  • پیچیدگی زمانی عملیات هیپ Heap's operations time complexity

  • چه زمانی از هیپ ها استفاده کنیم When to use heaps

  • صف اولویت در جاوا Priority Queue in Java

  • چالش کدنویسی Heap (با راه حل) Heap's coding challenge (with solution)

  • مسابقه هیپ Heap's quiz

نمودار Graph

  • مقدمه ای بر نمودارها Introduction to graphs

  • انواع نمودارها Types of graphs

  • پیچیدگی زمانی BFS و DFS برای نمودارها Time complexity of BFS and DFS for graphs

  • کاربردهای نمودارها Applications of graphs

  • پیاده سازی گراف و مورد استفاده در جاوا Graph implementation and usecase in Java

  • پیاده سازی DFS در جاوا DFS implementation in Java

  • پیاده سازی BFS در جاوا BFS implementation in Java

  • چالش کدنویسی گراف (با راه حل) Graph's coding challenge (with solution)

  • مسابقه گراف Graph's quiz

سعی کنید Trie

  • مقدمه ای بر تلاش ها Introduction to tries

  • اجرای در جاوا را امتحان کنید Trie implementation in Java

  • پیچیدگی مکانی و زمانی عملیات تری Space and time complexity of the trie's operations

  • چالش کدنویسی Trie (با راه حل) Trie's coding challenge (with solution)

  • مسابقه تری Trie's quiz

الگوریتم های جستجو Searching algorithms

  • مقدمه ای بر الگوریتم های جستجو Introduction to searching algorithms

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

  • جستجوی باینری Binary search

  • جستجوی خطی در مقابل جستجوی باینری Linear search vs Binary search

  • چالش کدنویسی الگوریتم های جستجو (با راه حل) Searching algorithms coding challenge (with solution)

  • مسابقه الگوریتم های جستجو Searching algorithms quiz

مرتب سازی الگوریتم ها Sorting algorihtms

  • مقدمه ای بر الگوریتم های مرتب سازی Introduction to sorting algorithms

  • مرتب سازی حبابی Bubble sort

  • مرتب سازی سریع Quick sort

  • مرتب سازی انتخابی Selection sort

  • مرتب سازی درج Insertion sort

  • ادغام مرتب سازی Merge sort

  • چالش کدنویسی الگوریتم های مرتب سازی (با راه حل) Sorting algorithms coding challenge (with solution)

  • آزمون مرتب سازی الگوریتم ها Sorting algorithms quiz

بازگشت Recursion

  • مقدمه ای بر بازگشت Introduction to recursion

  • چالش کدگذاری بازگشتی (با راه حل) Recursion's coding challenge (with solution)

  • مسابقه بازگشت Recursion's quiz

بعدش چی؟ What's next ?

  • نتیجه گیری و مراحل بعدی Conclusion and next steps

نمایش نظرات

آموزش ساختار داده ها و الگوریتم ها در جاوا - مصاحبه های Ace FAANG!
جزییات دوره
8.5 hours
71
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,003
4.7 از 5
ندارد
ندارد
ندارد
Ahmed Elsakka
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ahmed Elsakka Ahmed Elsakka

مهندس نرم افزار در آمازون