آموزش ساختار داده ها و الگوریتم ها در جاوا - مصاحبه های 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!
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
8.5 hours
71
Udemy (یودمی) udemy-small
06 اسفند 1401 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
2,003
4.7 از 5
ندارد
ندارد
ندارد
Ahmed Elsakka

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ahmed Elsakka Ahmed Elsakka

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

Udemy (یودمی)

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

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