Master Data Structure & Algorithms & Crack the Coding Interview
Take a unique Python course that will help you master data structures and algorithms, allowing you to confidently handle any tasks in a technical interview. You will gain knowledge that will make you a professional in algorithms and prepare you for interviews at the largest IT companies.
More
What to expect:
- Learning key patterns for solving any interview tasks.
- Systematic knowledge to become a true master of technical interviews.
- Practical advice and a ready-to-use training program based on a proven methodology.
This course is created by a developer who went from fearing tasks to being confident in their abilities. "Algo University" combines hundreds of resources, books, articles, and courses into one complete program that will eliminate your uncertainty.
You will master:
- The most important topics of data structures and algorithms.
- Methodologies for applying knowledge to solve real problems.
- Practical exercises for interview preparation.
Result:
Upon completing the course, you will be able to confidently solve any interview tasks, increase your chances of employment at leading companies, and clear the path to a high-paying developer career.
This course is for you if:
- You are a beginner programmer struggling to progress due to a lack of a clear learning plan.
- You feel you lack the skills to pass interviews but are serious about learning everything necessary.
- You cannot or do not want to spend $40,000+ on a computer science degree but are ready to move forward in your career.
- You do not want to study unnecessary theory that is not useful for employment and only wastes your time.
- You want to learn only truly important topics in a simple and understandable way.
This course is not for you if:
- You are only looking for theoretical information and are not ready for practical tasks.
- You are not ready to invest in yourself and prefer the cheapest ways of learning.
- You are not ready to work hard - to achieve results, you will need to watch all the lessons and solve 50-100 practical tasks.
- You are not interested in becoming an excellent programmer or working in large tech companies. If this is the case, this course may not be suitable for you.
Watch Online Master Data Structure & Algorithms & Crack the Coding Interview
# | Title | Duration |
---|---|---|
1 | Why every developer needs to learn Data Structures & Algorithms | 06:27 |
2 | Introduction to Data Structures | 06:14 |
3 | Introduction to Algorithms | 07:54 |
4 | How to MASTER Data Structures & Algorithms | 07:29 |
5 | How to Solve Coding Problems - My 6-Step Framework | 10:41 |
6 | Applying the framework: TwoSum | 09:46 |
7 | What this Bonus Module is about | 01:40 |
8 | 1 - Writing Our First Python Program | 13:45 |
9 | 2 - Python variables (Building Block 1) | 11:49 |
10 | 3 - Errors (when things go wrong...) | 13:21 |
11 | 4 - Basic Python datatypes - (Building Block 2) | 12:28 |
12 | 5 - Basic Python datatypes 2 | 17:57 |
13 | 6 - Making our datatypes more POWERFUL - Methods | 18:04 |
14 | 7 - Python Functions (Building Block 3) | 23:23 |
15 | 8 - The flow of a program (Building Block 4) | 17:01 |
16 | 9 - Compound data types | 17:19 |
17 | 11 - Error handling - how to prevent crashes... | 07:45 |
18 | 12 - Libraries - standing on the shoulders of giants | 16:35 |
19 | Modeling the real world using code - Object-Oriented Programming Introduction | 04:01 |
20 | OOP-1 - Classes & Objects - Let's make some cookies! | 10:45 |
21 | OOP-2: Objects & Classes in Python - I have been lying to you.. | 07:13 |
22 | OOP-3: Creating our Own Classes | 05:50 |
23 | OOP-4: Creating our Own Classes 2 | 06:27 |
24 | OOP-5: Private attributes & Properties: Creating Secrets (Advanced) | 10:43 |
25 | Module Overview - How do developers analyze algorithms? | 02:07 |
26 | Introduction to Efficiency | 03:42 |
27 | Big O notation - What makes an algorithm "fast"? | 12:23 |
28 | Good vs bad runtime - O(n) & O(n^2) | 08:02 |
29 | Best runtime - O(1) | 04:46 |
30 | Logarithmic & linearithmic time complexity:O(logn) & O(nlogn) | 08:03 |
31 | (Advanced) Terrible Time Complexities! - O(2^n), O(n!) and beyond | 07:38 |
32 | Multiple inputs | 04:24 |
33 | Space complexity | 05:08 |
34 | Data Structures Introduction | 06:44 |
35 | The Computer's Memory | 07:13 |
36 | Lists/Arrays 1 | 04:15 |
37 | Lists/Arrays 2 - Big O | 06:29 |
38 | (advanced) Dynamic Lists & list memory allocation | 05:56 |
39 | List Exercise 1 walkthrough | 04:44 |
40 | List exercise 2 walkthrough | 05:26 |
41 | Linked Lists Introduction - What is a Linked List? | 02:18 |
42 | Linked Lists Implementation in Python 1 | 11:06 |
43 | Linked List implementation in Python 2 | 06:00 |
44 | Linked List Big O | 04:48 |
45 | List vs Linked List | 03:11 |
46 | Linked List Exercise 1: Reverse a Linked List | 05:57 |
47 | Linked List Exercise 2: Palindrome | 05:47 |
48 | Stacks & Queues Introduction | 03:25 |
49 | Stacks & Queues in Memory | 03:42 |
50 | Stack Implementation in Python | 06:18 |
51 | Queue Implementation in Python | 02:03 |
52 | Stacks Big O | 01:37 |
53 | Queue Big O | 01:50 |
54 | Stack exercise walkthrough | 07:57 |
55 | Queue exercise walkthrough | 05:20 |
56 | Trees Introduction | 03:24 |
57 | Binary Search Trees | 06:25 |
58 | Binary Search Tree Implementation 1 - Insertion | 03:58 |
59 | Binary Search Tree Implementation 2 - Searching | 11:00 |
60 | Binary Search Tree Implementation 3 - Deletion | 01:39 |
61 | Heaps | 04:08 |
62 | Heap Implementation 1 | 13:57 |
63 | Heap Implementation 2 | 05:42 |
64 | Graphs Introduction | 04:38 |
65 | Undirected Graph Implementation | 05:41 |
66 | Different Types of Graphs | 03:35 |
67 | Directed Graph Implementation | 02:02 |
68 | Weighted (Directed) Graph Implementation | 01:31 |
69 | Hash Maps Introduction | 03:42 |
70 | Hash Maps Behind the Scenes | 08:15 |
71 | Hash Maps Big O | 02:56 |
72 | Hash Map Implementation from First Principles | 08:36 |
73 | Hash Map Exercise Walkthrough | 03:44 |
74 | Algorithms introduction | 03:56 |
75 | List Algorithms | 12:00 |
76 | Recursion introduction | 02:44 |
77 | The Call Stack & Stack Overflow | 06:42 |
78 | How to use recursion (step-by-step) | 07:26 |
79 | Recursion exercise 1 walkthrough - Fibonacci | 05:52 |
80 | Recursion exercise 2 walkthrough - Palindrome | 03:48 |
81 | Recursive vs iterative programming | 05:32 |
82 | Sorting introduction | 04:33 |
83 | Insertion Sort | 04:41 |
84 | Insertion Sort Implementation | 07:09 |
85 | Bubble Sort | 03:11 |
86 | Bubble Sort Implementation | 03:54 |
87 | Merge Sort | 08:10 |
88 | Merge Sort Implementation | 10:56 |
89 | Quick Sort | 05:12 |
90 | Quick Sort Implementation | 06:13 |
91 | Which sorting algorithm should you use? | 03:40 |
92 | Graph Searching Introduction | 02:06 |
93 | Breadth-First Search (BFS) | 08:18 |
94 | BFS Implementation | 07:20 |
95 | Depth-First Search (DFS) | 01:47 |
96 | DFS Implementation | 06:37 |
97 | DFS vs BFS | 03:57 |
98 | Dijkstra's Algorithm | 07:44 |
99 | Dijkstra's Algorithm Implementation | 05:50 |
100 | Dynamic Programming Introduction | 06:26 |
101 | Dynamic programming exercise walkthrough: Fibonacci | 03:31 |
102 | When To Use Dynamic Programming? (My Framework) | 04:47 |
103 | Dynamic programming practical examples from my startup | 04:04 |
104 | Two Pointers | 05:13 |
105 | Two Pointers 2 | 05:52 |
106 | Two Pointers 3 | 10:39 |
107 | Sliding Window | 03:03 |
108 | Sliding Window 2 | 06:36 |
109 | Fast and Slow Pointers (Tortoise and Hare) | 04:32 |
110 | Fast and Slow Pointers 2 | 04:00 |
111 | Fast and Slow Pointers 3 | 03:04 |
112 | Backtracking | 05:31 |
113 | Backtracking 2 | 08:54 |
114 | Divide and Conquer | 09:54 |
115 | Divide and Conquer 2 | 07:23 |
116 | Prefix sum | 03:20 |
117 | Prefix sum 2 | 06:43 |
118 | Prefix sum 3 | 06:43 |
119 | Note on this module | 02:42 |
120 | How to Apply for Jobs and Get More Interviews | 07:28 |
121 | How to Leverage LinkedIn to Get Interviews | 07:02 |
122 | The Top Non-Technical Skills to get Hired | 12:49 |
123 | How to Crack the Coding Interview | 11:26 |