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

Introduction to Data Structures & Algorithms in Java

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: طراحی شده برای کمک به درک اصول DS و الگوریتم ها به خوبی. برای مصاحبه های برنامه نویسی ضروری است. قادر به دانستن و پیاده سازی ساختارهای داده و الگوریتم های مختلف بتوانید الگوریتم های خود را بنویسید و درک کنید که زمان اجرای آنها خوب است یا بد. الگوریتم ها

این دوره برخی از ساختارهای داده پایه (آرایه ها، لیست های پیوندی، پشته ها، صف ها، درختان و پشته ها) و الگوریتم ها (الگوریتم های مرتب سازی مختلف، و الگوریتم هایی برای عملیات روی درخت ها و پشته های جستجوی باینری) را معرفی می کند. همچنین در این دوره به موارد بازگشتی نیز خواهیم پرداخت. استفاده از گرافیک و انیمیشن باعث می شود سخنرانی ها قابل درک و هضم بسیار آسان باشد. پس از گذراندن این دوره، ترس خود را از ساختار داده ها و الگوریتم ها از دست خواهید داد.


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

مقدمه ای بر الگوریتم ها Introduction to Algorithms

  • معرفی Introduction

  • الگوریتم اقلیدس Euclid's algorithm

  • الگوریتم مرتب سازی حباب Bubble Sort algorithm

  • چرا ساختار داده ها و الگوریتم ها را مطالعه کنید؟ Why study data structures & algorithms

  • صحت یک الگوریتم Correctness of an algorithm

  • امتحان فصل Chapter Quiz

تجزیه و تحلیل الگوریتم ها Analysis of Algorithms

  • در این بخش توجه داشته باشید Note on this section

  • معرفی Introduction

  • نحوه محاسبه پیچیدگی زمانی How to calculate the time complexity

  • مدل محاسباتی RAM The RAM model of computation

  • پیچیدگی زمانی الگوریتم مرتب‌سازی حبابی Time complexity of Bubble sort algorithm

  • کد شبه: الگوریتم مرتب سازی حبابی Pseudo code : Bubble sort algorithm

  • نماد O بزرگ The Big O notation

  • استفاده از نماد Big O: مثال ها Using Big O notation : Examples

  • مقایسه زمان اجرا Comparison of running times

  • امتحان فصل Chapter Quiz

الگوریتم های مرتب سازی و جستجوی پایه Basic Sorting and Search Algorithms

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

  • انتخاب مرتب سازی: شبه کد Selection Sort : Pseudocode

  • مقدمه ای بر Insertion Sort Introduction to Insertion Sort

  • استفاده از الگوریتم مرتب سازی درج برای توپ های نشانه Applying Insertion Sort algorithm to cue balls

  • مرتب سازی درج: شبه کد Insertion Sort: Pseudocode

  • الگوریتم های مرتب سازی O(n²) - مقایسه O(n²) sorting algorithms - Comparison

  • در محل مرتب سازی In place sorting

  • مرتب سازی پایدار در مقابل ناپایدار Stable Vs Unstable Sorts

  • جستجوی عناصر در یک آرایه مرتب نشده Searching elements in an un ordered array

  • جستجوی عناصر در یک آرایه ORDERED Searching elements in an ORDERED array

  • جستجوی عناصر در یک آرایه ORDERED - Contd. Searching elements in an ORDERED array - contd.

  • درج و حذف موارد در یک آرایه ORDERED Inserting and Deleting items in an ORDERED array

  • مرتب سازی هر نوع شی Sorting any type of object

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

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

  • لیست پیوندی چیست؟ What is a Linked List?

  • پیاده سازی لیست پیوندی در جاوا Implementing a Linked List in Java

  • درج یک گره جدید Inserting a new Node

  • طول یک لیست پیوندی Length of a Linked List

  • حذف گره سر Deleting the head node

  • جستجو برای یک آیتم Searching for an Item

  • استفاده از ژنریک های جاوا برای پارامترسازی LinkedList Using java generics to parameterize the LinkedList

  • لیست های دوبل پایان Doubly Ended Lists

  • درج داده ها در یک لیست پیوندی مرتب شده Inserting data in a sorted Linked List

  • لیست پیوندی دوگانه Doubly Linked List

  • مرتب سازی درج مجدد مورد بازدید قرار گرفت Insertion Sort revisited

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

پشته ها و صف ها Stacks and Queues

  • پشته ها Stacks

  • انواع داده های چکیده Abstract Data Types

  • پیاده سازی پشته ها با استفاده از آرایه ها Implementing Stacks using Arrays

  • صف ها Queues

  • صف ها با استفاده از آرایه ها Queues using Arrays

  • صف های دوبل پایان Double Ended Queues

  • صف های دو پایانه با استفاده از آرایه ها Double Ended Queues using Arrays

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

بازگشت Recursion

  • معرفی Introduction

  • درک بازگشت Understanding Recursion

  • بازگشت دم Tail recursion

  • برج هانوی Tower of Hanoi

  • برج هانوی - اجرا Tower of Hanoi - Implementation

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

  • مرتب سازی ادغام - کد شبه Merge Sort - Pseudocode

  • مرحله ادغام - کد شبه Merge Step - Pseudocode

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

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

درختان جستجوی دودویی Binary Search Trees

  • ساختار داده درختی The Tree Data structure

  • درختان باینری Binary Trees

  • درختان جستجوی دودویی Binary Search Trees

  • یافتن یک مورد در درخت جستجوی باینری Finding an item in a Binary Search Tree

  • پیاده سازی روش Find Implementing the find method

  • درج یک مورد در درخت جستجوی باینری Inserting an item in a Binary Search Tree

  • حذف یک مورد: مورد 1 Deleting an Item : Case 1

  • حذف یک مورد - مورد 2 Deleting an Item - Case 2

  • حذف یک مورد - مورد 3 Deleting an Item - Case 3

  • حذف یک مورد - Soft Delete Deleting an Item - Soft Delete

  • پیدا کردن کوچکترین و بزرگترین مقادیر Finding smallest & largest values

  • پیمایش درخت: به ترتیب Tree Traversal : In Order

  • پیمایش درخت: پیش سفارش Tree Traversal : Pre Order

  • پیمایش درخت: سفارش پست Tree Traversal : Post Order

  • درختان نامتعادل در مقابل درختان متعادل Unbalanced Trees Vs Balanced Trees

  • ارتفاع درخت باینری Height of a Binary Tree

  • پیچیدگی زمانی عملیات در درختان جستجوی باینری Time Complexity of Operations on Binary Search Trees

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

الگوریتم های مرتب سازی بیشتر More Sorting Algorithms

  • معرفی Introduction

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

  • QuickSort: مرحله پارتیشن QuickSort: The partition step

  • مرتب سازی پوسته Shell Sort

  • مرتب سازی پوسته: مثال Shell Sort: Example

  • مرتب سازی شمارش Counting Sort

  • مرتب سازی ریشه Radix Sort

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

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

انبوه Heaps

  • معرفی Introduction

  • حذف ریشه Deleting the root

  • درج یک مورد در یک پشته Inserting an item in a heap

  • پشته ها به عنوان صف های اولویت دار Heaps as Priority Queues

  • نمایش پشته ها با استفاده از آرایه ها Representing heaps using Arrays

  • مرتب سازی پشته Heap Sort

  • ساختن یک پشته Building a heap

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

هشتبل ها Hashtables

  • معرفی Introduction

  • جداول دسترسی مستقیم Direct Access Tables

  • هش کردن Hashing

  • رفع تصادم از طریق زنجیر Resolving collisions through chaining

  • تابع Hash The Hash function

  • برای رفع تصادم، آدرس دهی را باز کنید Open Addressing to resolve collisions

  • استراتژی برای آدرس دهی باز Strategies for Open Addressing

  • پیچیدگی زمانی: آدرس دهی را باز کنید Time Complexity: Open Addressing

  • امتحان فصل Chapter Quiz

  • وظیفه Assignment

  • نتیجه Conclusion

نمایش نظرات

نظری ارسال نشده است.

آموزش مقدمه ای بر ساختارها و الگوریتم های داده در جاوا
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
5 hours
103
Udemy (یودمی) udemy-small
13 اسفند 1394 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
24,078
4.3 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Raghavendra Dixit Raghavendra Dixit

Dizauvi Learning Solutions من فارغ التحصیل انستیتوی فناوری هند هستم ، معروف به IIT. من به عنوان معمار فنی در هر دو شرکت نرم افزاری مستقر در محصولات و خدمات با حدود 14 سال تجربه برنامه نویسی کار کرده ام (از ژوئن 2013). من با زبانهایی مانند Perl / Java / Objective C / Scala و JavaScript کار کرده ام. من همچنین از چارچوب ها / سیستم عامل های مختلفی مانند Spring ، Play ، Cocoa و Android استفاده کرده ام. من برخی از توسعه برنامه های سازمانی را هدایت کرده ام. در اوقات فراغت من دوست دارم محتوای فنی ایجاد کنم ، که به راحتی قابل پیگیری است و واقعاً به افراد در صنعت نرم افزار کمک می کند کار خود را بهتر انجام دهند. افرادی که تحت آموزش ها و فیلم های من قرار می گیرند همیشه تجربه لذت بخشی دارند و بیشتر آنها به من گفته اند که آرزو می کنند در مدرسه نیز چیزهایی به این روش آموزش داده شود. من امیدوارم که افرادی که دوره های من را در اینجا می گذرانند ، بتوانند کارهای برنامه نویسی خود را بهتر انجام دهند و همچنین با اطمینان می توانند موقعیت های بهتری را بدست آورند ، در صورتی که به دنبال این کار باشند. اخیراً من به عنوان مهندس VP در یک شرکت تازه تأسیس سرمایه دار Sequoia کار کرده ام و اکنون می توانم شروع به کار خود کنم.

Udemy (یودمی)

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

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