# Download Code With Mosh – The Ultimate Data Structures & Algorithms: Part 2 2020-2

## Description

The Ultimate Data Structures & Algorithms: Part 2 is a practical training course in the field of data structures and algorithms that will help you to code better and faster. Have you also studied in the field of computer science, but could not understand the topic of data structure and algorithm well? Or you didn’t pass your job interview because of your lack of knowledge in the field of construction and the algorithm? If your answer is yes, this course can completely solve your problem.

Data structures and algorithms are patterns for solving programming problems. Programmers who have sufficient knowledge of data structures and algorithms solve problems better than others. In this training course, you will learn about non-linear data structure and topics such as binary tree, AVL tree, stacks, tries, and graphs. The instructor of the course uses Java language to explain concepts related to data structures and algorithms, but you can use the techniques of this course in any programming language.

### Items taught in this course:

• Familiarity with non-linear data structures
• Better and faster coding
• Increasing the skill of solving programming problems
• Mastering the basic concepts of computer science
• Getting to know the most popular algorithms
• Work with essential data structure concepts
• Familiarity with binary tree and AVL tree

### Course specifications The Ultimate Data Structures & Algorithms: Part 2:

• English language
• Duration: 6 hours
• Number of courses: 130
• Education level: Intermediate
• Instructor: Mosh Hamedani
• File format: mp4

Getting started
1- Introduction (0:50)
2- Source code
Binary Trees (73m)
1- Introduction (0:55)
2- What are Trees (5:36)
3- Exercise- Populating a Binary Search Tree
4- Exercise- Building a Tree (2:41)
5- Solution-insert() (7:44)
6- Solution-find() (2:00)
7- Traversing Trees (5:58)
8- Exercise- Tree Traversal
9- Recursion (5:39)
10- Depth First Traversals (5:23)
11- Depth and Height of Nodes (7:06)
12- Minimum Value in a Tree (7:37)
13- Exercise- Equality Checking (0:45)
14- Solution- Equality Checking (4:08)
15- Exercise- Validating Binary Search Trees (4:14)
16- Solution- Validating Binary Search Trees (4:18)
17- Exercise- Nodes at K Distance (1:48)
18- Solution- Nodes at K Distance from the Root (4:37)
19- Level Order Traversal (2:55)
20- Trees- Exercises
21- Summary (1:22)

##### AVL Trees (49m)

1- Introduction (0:31)
2- Balanced and Unbalanced Trees (3:01)
3- Rotations (5:02)
4- AVL Trees (4:04)
5- Exercise: AVL Rotations
6- Exercise- Building an AVL Tree (1:11)
7- Solution-insert() (8:47)
8- Exercise – Height Calculation (1:24)
9- Solution – Height Calculation (2:43)
10- Exercise- Balance Factor (2:04)
11- Solution – Balance Factor (4:01)
12- Exercise- Detecting Rotations (2:54)
13- Solution- Detecting Rotations (3:32)
14- Exercise- Implementing Rotations (3:51)
15- Solution- Implementing Rotations (5:40)
16- AVL Trees – Exercises
17- Summary (1:01)
A quick note
Heaps (53m)
1- Introduction (0:21)
2- What are Heaps (6:28)
3- Exercise- Working with Heaps
4- Exercise- Building a Heap (1:55)
5- Solution-insert() (8:24)
6- Solution-remove() (7:07)
7- Solution – Edge Cases (6:11)
8- Heap Sort (2:29)
9- Priority Queues (5:04)
10- Exercise- Heapify (1:26)
11- Solution- Heapify (7:12)
12- Solution-Optimization (2:42)
13- Exercise- Kth Largest Item (0:31)
14- Solution- Kth Largest Item (3:47)
15-Heaps-Exercises
16- Summary (1:19)

##### Tries (46m)

1- Introduction (0:30)
2- What are Tries (3:50)
3- Exercise- Populating a Trie
4- Exercise- Building a Trie (3:03)
5- Solution- Building a Trie (5:44)
6- An Implementation with a HashTable (1:50)
7- A Better Abstraction (5:28)
8- Exercise- Looking Up a Word (1:12)
9- Solution- Looking Up a Word (2:35)
10- Traversals (3:35)
11- Exercise- Removing a Word (1:53)
12- Solution- Removing a Word (8:14)
13- Exercise – Auto Completion (2:51)
14- Solution – Auto Completion (5:59)
15- Tries-Exercises
16- Summary (0:45)
A quick note

##### Graphs (66m)

1- Introduction (0:26)
2- What are Graphs (2:09)
5- Exercise- Building a Graph (1:50)
6- Solution- Adding Nodes and Edges (7:34)
7- Solution- Removing Nodes and Edges (4:48)
8- Traversal Algorithms (3:58)
9- Exercise- Traversal Algorithms
10- Exercise- Depth-first Traversal (Recursive) (1:29)
11- Solution- Depth-first Traversal (Recursive) (3:44)
12- Exercise- Depth-first Traversal (Iterative) (2:44)
13- Solution- Depth-first Traversal (Iterative) (3:59)
14- Exercise- Breadth-first Traversal (Iterative) (1:18)
16- Exercise- Topological Sorting (5:06)
17- Solution- Topological Sort (4:05)
18- Exercise-Cycle Detection (Directed Graphs) (3:42)
19- Solution-Cycle Detection (Directed Graphs) (6:26)
20- Graphs Summary (1:02)
Undirected Graphs (59m)
1- Introduction (0:26)
2- Exercise- Weighted Graphs (1:30)
3- Solution- Weighted Graphs (5:20)
4- An Object-Oriented Solution (6:13)
5- Dijkstra’s Shortest Path Algorithm (4:35)
6- Exercise- Getting the Shortest Distance (6:08)
7- Solution- The Shortest Distance (5:27)
8- Solution – Shortest Path (7:53)
9- Exercise – Cycle Detection (Undirected Graphs) (2:03)
10- Solution-Cycle Detection (Undirected Graphs) (4:42)
11- Minimum Spanning Tree (1:56)
12- Exercise- Prim’s Algorithm (2:45)
13- Solution- Prim’s Algorithm (10:39)
14- Thank you

### Course prerequisites

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 part of this series as the concepts and exercises in this part are more complex than those covered in the first part.

### Installation guide

After extracting, watch with your favorite player.

English subtitle

Quality: 1080p

Changes:

Version 2020/1 compared to 2019/9, one lesson and subtitles of all lessons have been added.