Tags
Language
Tags
March 2025
Su Mo Tu We Th Fr Sa
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
Attention❗ To save your time, in order to download anything on this site, you must be registered 👉 HERE. If you do not have a registration yet, it is better to do it right away. ✌

( • )( • ) ( ͡⚆ ͜ʖ ͡⚆ ) (‿ˠ‿)
SpicyMags.xyz

40Days Of Code Python Data Structures & Algorithms Leetcode

Posted By: ELK1nG
40Days Of Code Python Data Structures & Algorithms Leetcode

40Days Of Code Python Data Structures & Algorithms Leetcode
Published 2/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 9.40 GB | Duration: 38h 54m

Dynamic Programming, Backtracking, Data Structures, BigO,Question Patterns,In depth Explanations. Get the job you want !

What you'll learn

Dynamic Programming, Backtracking Techniques

Common Data Structures such as Arrays, Hash Table,Linked List,Binary trees,Graphs etc.

Time and Space Complexity of Algorithms, Detailed Discussion of Logic to solve questions

Real Coding Interview Questions from Google, Meta,Amazon,Netflix ,Microsoft etc.

Boost your Problem solving skills

Requirements

Basic knowledge of Python ( things like write a loop, function etc)

No experience with Data Structures or Algorithms required

Description

About the Course:Welcome to the Algorithms and Data Structures Coding Interview Bootcamp with Python!The primary goal of this course is to prepare you for coding interviews at top tech companies. By tackling one problem at a time and understanding its solution, you'll accumulate a variety of tools and techniques for conquering any coding interview.Daily Coding Challenges:The course is structured around daily coding challenges. Consistent practice will equip you with the skills required to ace coding interviews. For the next 40 days commit to yourself to practice atleast 2 coding interview questions everyday. You don't need any setup for this as the daily coding problem challenges can be solved in the coding environment provided by Udemy. The course will automatically track your progress and you just need to spend your time making actual progress everyday.Topics Covered:We start from the basics with Big O analysis, then move on to very important algorithmic techniques such as Recursion, Backtracking and Dynamic Programming Patters. After this we move to cover common data structures, and discuss real problems asked in interviews at tech giants such as Google, Meta, Amazon, Netflix, Apple, and Microsoft.For each question, we will:Discuss the optimal approachExplain time and space complexityCode the solution in Python (you can follow along in your preferred language)Additional Resources:The course includes downloadable resources, motivational trackers, and cheat sheets.Course Outline:Day 1: Arrays, Big O, Sorted Squared Array, Monotonic ArrayDay 2:Recursion,k-th symbol in Grammar,Josephus problemDay 3:Recursion, Tower of Hanoi, Power SumDay 4:Backtracking, Permutations, Permutations 2Day 5:Backtracking, Subsets, Subsets 2Day 6:Backtracking, Combinations, Combinations Sum 1Day 7:Backtracking,Combinations Sum 2,Combinations Sum 3Day 8:Backtracking,Sudoku Solver, N QueensDay 9:Dynamic Programming, Fibonacci, Climbing StairsDay 10:Dynamic Programming, Min Cost Climbing Stairs, TribonacciDay 11:Dynamic Programming, 01 Knapsack, Unbounded KnapsackDay 12:Dynamic Programming, Target Sum, Partition Equal Subset SumDay 13:Dynamic Programming, LCS, Edit DistanceDay 14:Dynamic Programming, LIS, Max Length of Pair Chain, Russian Doll EnvelopesDay 15:Dynamic Programming, Palindromic Substrings, Longest Palindromic Substring, Longest Palindromic SubsequenceDay 16:Dynamic Programming, Palindrome Partitioning, Palindrome Partitioning 2Day 17:Dynamic Programming, Word Break, Matrix Chain MultiplicationDay 18:Dynamic Programming, Kadane's algorithm - Max Subarray, Maximum Product SubarrayDay 19: Arrays, Rotate Array, Container with Most WaterDay 20: Hash Tables, Two Sum, Isomorphic StringsDay 21: Strings, Non-Repeating Character, PalindromeDay 22: Strings, Longest Unique Substring, Group AnagramsDay 23: Searching, Binary Search, Search in Rotated Sorted ArrayDay 24: Searching, Find First and Last Position, Search in 2D ArrayDay 25: Sorting, Bubble Sort, Insertion SortDay 26: Sorting, Selection Sort, Merge SortDay 27: Sorting, Quick Sort, Radix SortDay 28: Singly Linked Lists, Construct SLL, Delete DuplicatesDay 29: Singly Linked Lists, Reverse SLL, Cycle DetectionDay 30: Singly Linked Lists, Find Duplicate, Add 2 NumbersDay 31: Doubly Linked Lists, DLL Remove Insert, DLL Remove AllDay 32: Stacks, Construct Stack, Reverse Polish NotationDay 33: Queues, Construct Queue, Implement Queue with StackDay 34: Binary Trees, Construct BST, Traversal TechniquesDay 35: Binary Trees, Level Order Traversal, Left/Right ViewDay 36: Binary Trees, Invert Tree, Diameter of TreeDay 37: Binary Trees, Convert Sorted Array to BST, Validate BSTDay 38: Heaps, Max Heap, Min Priority QueueDay 39: Graphs, BFS, DFSDay 40: Graphs, Number of Connected Components, Topological SortMy confidence in your satisfaction with this course is so high that we offer a complete money-back guarantee for 30 days! Thus, it's a totally risk-free opportunity. Register today, facing ZERO risk and standing to gain EVERYTHING.So what are you waiting for? Join the best Python Data Structures & Algorithms Bootcamp on Udemy.I'm eager to see you in the course.Let's kick things off! :-) Jackson

Overview

Section 1: Day 1: Arrays Data Structures and Algorithms

Lecture 1 What you're going to get from this course

Lecture 2 Welcome! How to make best use of this course (Please Watch)

Lecture 3 Day 1 Goals

Lecture 4 Introduction to Data Structures

Lecture 5 Introduction to Big O, Time Complexity

Lecture 6 2 Asymptotic Analysis and Big O

Lecture 7 Big O Space Complexity

Lecture 8 Big O Logarithm

Lecture 9 Arrays: Data Structures Crash Course

Lecture 10 CODING EXERCISES

Lecture 11 CODING INTERVIEW Q1 (Easy): Sorted Squared Array

Lecture 12 Method 1, Big O Analysis

Lecture 13 Python Code - Method 1

Lecture 14 Method 2

Lecture 15 Python Code - Method 2

Lecture 16 CODING INTERVIEW Q2 (Easy): Monotonic Array

Lecture 17 Method and Big O analysis

Lecture 18 Python Code - Monotonic Array

Section 2: Day 2: Recursion

Lecture 19 Day 2 Goals

Lecture 20 Recursion Basics

Lecture 21 Recursive Leap of Faith

Lecture 22 Visualising Recursion

Lecture 23 Recursion vs Iteration

Lecture 24 Ways to write Base condition

Lecture 25 Recurrence relation

Lecture 26 How to Solve Recursion Questions

Lecture 27 Recursion Approaches - 0 to N and N to 0

Lecture 28 Recursion is everywhere

Lecture 29 Complexity Analysis of Recursive Solutions

Lecture 30 CODING INTERVIEW QUESTION (Medium): k-th symbol in Grammar

Lecture 31 Approach(k-th symbol in Grammar)

Lecture 32 Pseudocode (k-th symbol in Grammar)

Lecture 33 Python Code

Lecture 34 Complexity Analysis(k-th symbol in Grammar)

Lecture 35 Python Solution (k-th symbol in Grammar)

Lecture 36 CODING INTERVIEW QUESTION (Medium): Josephus problem

Lecture 37 Approach 1

Lecture 38 Pseudocode

Lecture 39 Complexity Analysis

Lecture 40 Python Solution 1: Josephus problem Method 1

Lecture 41 Approach 2

Lecture 42 Pseudocode

Lecture 43 Complexity Analysis

Lecture 44 Python Solution 2 : Josephus problem Method 2

Lecture 45 Approach 3

Lecture 46 Complexity Analysis

Lecture 47 Python Solution 3 : Josephus problem Method 3

Section 3: Day 3: Recursion Continued

Lecture 48 Day 3 Goals

Lecture 49 CODING INTERVIEW QUESTION (Medium): Tower of Hanoi

Lecture 50 Identifying that wew can use Recursion

Lecture 51 Approach

Lecture 52 Recursion Tree

Lecture 53 Python Solution : Tower of Hanoi

Lecture 54 Complexity Analysis : Tower of Hanoi

Lecture 55 CODING INTERVIEW QUESTION(Medium): Power Sum

Lecture 56 Method and Big O Analysis

Lecture 57 Python Solution: Power Sum

Section 4: Day 4: Backtracking

Lecture 58 Day 4 Goals

Lecture 59 What is Backtracking

Lecture 60 How is it different from Recursion ?

Lecture 61 How does Backtracking work ?

Lecture 62 Pass by reference / change inplace

Lecture 63 Blueprint to solve questions using Backtracking

Lecture 64 Identify when to use Backtracking

Lecture 65 CODING INTERVIEW QUESTION (Medium): Permutations

Lecture 66 Approach

Lecture 67 Pseudocode

Lecture 68 Python Solution : Permutations

Lecture 69 Complexity Analysis

Lecture 70 CODING INTERVIEW QUESTION(Medium): Permutations 2

Lecture 71 Approach

Lecture 72 Pseudocode

Lecture 73 Python Code: Permutations 2

Lecture 74 Complexity Analysis : Permutations 2

Section 5: Day 5: Backtracking

Lecture 75 Day 5 Goals

Lecture 76 CODING INTERVIEW QUESTION(Medium): Subsets

Lecture 77 Method

Lecture 78 Subsets - Comparison with Backtracking Blueprint

Lecture 79 Subsets - Complexity Analysis

Lecture 80 Python Code - Subsets

Lecture 81 CODING INTERVIEW QUESTION(Medium): Subsets 2

Lecture 82 Approach

Lecture 83 Python Code: Subsets 2

Lecture 84 Subsets 2: Complexity Analysis

Section 6: Day 6: Backtracking

Lecture 85 Day 6 Goals

Lecture 86 CODING INTERVIEW QUESTION(Medium): Combinations

Lecture 87 Approach

Lecture 88 Combinations : Complexity Analysis

Lecture 89 Python Code : Combinations

Lecture 90 Combinations: Optimisation

Lecture 91 Python Code: Combinations with Optimisation

Lecture 92 CODING INTERVIEW QUESTION ( Medium) : Combinations Sum 1

Section 7: Day 7: Backtracking

Lecture 93 Day 7 Goals

Lecture 94 CODING INTERVIEW QUESTION (Medium): Combinations Sum 2

Lecture 95 CODING INTERVIEW QUESTION ( Medium) : Combinations Sum 3

Section 8: Day 8: Backtracking

Lecture 96 Day 8 Goals

Lecture 97 CODING INTERVIEW QUESTION(Hard) : Sudoku Solver

Lecture 98 Approach

Lecture 99 Pseudocode

Lecture 100 isValid check for Sudoku Solver

Lecture 101 Python Code : Sudoku Solver

Lecture 102 Complexity Analysis

Lecture 103 Another approach - Sudoku Solver ( Python Code)

Lecture 104 CODING INTERVIEW QUESTION(Hard): N Queen

Lecture 105 Approach

Lecture 106 Pseudocode

Lecture 107 Python Code: N Queen

Lecture 108 Complexity Analysis

Section 9: Day 9: Dynamic Programming

Lecture 109 Day 9 Goals

Lecture 110 Introduction to Dynamic Programming (DP)

Lecture 111 Dynamic Programming - Patterns

Lecture 112 Approach to solve DP(Dynamic Programming) Questions

Lecture 113 Why writing the Recursive solution helps to write the Bottom up approach

Lecture 114 Identifying Dynamic Programming Questions

Lecture 115 CODING INTERVIEW QUESTION(Easy): Fibonacci

Lecture 116 Approaches

Lecture 117 Approach 1: Recursion

Lecture 118 Complexity Analysis: Approach 1 - Recursion

Lecture 119 Python Code - Recursion

Lecture 120 Approach 2: Memoization

Lecture 121 Complexity Analysis : Approach 2 - Memoization

Lecture 122 Python Code: Approach 2 - Memoization

Lecture 123 Approach 3: Tabulation

Lecture 124 Complexity Analysis: Approach 3 - Tabulation

Lecture 125 Python Code: Approach 3 - Tabulation

Lecture 126 Approach 4: Space Optimised Tabulation + Complexity Analysis

Lecture 127 Python Code: Approach 4 -Space Optimised Tabulation + Complexity Analysis

Lecture 128 CODING INTERVIEW QUESTION(Easy): Climbing Stairs

Section 10: Day 10: Dynamic Programming Type - Fibonacci

Lecture 129 Day 10 Goals

Lecture 130 CODING INTERVIEW QUESTION(Easy): Min Cost Climbing Stairs

Lecture 131 CODING INTERVIEW QUESTION(Easy): Tribonacci

Section 11: Day 11: Dynamic Programming Type - Knapsack

Lecture 132 Day 11 Goals

Lecture 133 CODING INTERVIEW QUESTION(Medium): 0/1 Knapsack

Lecture 134 Approach 1: Recursion

Lecture 135 Recursive Approach: Pseudocode

Lecture 136 Recursive Approach: Complexity Analysis

Lecture 137 Python Code : Recursive Approach

Lecture 138 Approach 2: Memoization

Lecture 139 Memoization: Pseudocode

Lecture 140 Python Code: Memoization

Lecture 141 Memoization: Complexity Analysis

Lecture 142 Approach 3: Tabulation

Lecture 143 Python Code: Tabulation

Lecture 144 Tabulation: Complexity Analysis

Lecture 145 Approach 4: Space Optimised Tabulation Approach

Lecture 146 Python Code: Space Optimised Tabulation

Lecture 147 Space Optimised Tabulation Approach: Complexity Analysis

Lecture 148 CODING INTERVIEW QUESTION(Medium): Unbounded Knapsack

Section 12: Day 12: Dynamic Programming Type - Knapsack

Lecture 149 Day 12 Goals

Lecture 150 CODING INTERVIEW QUESTION(Medium): Target Sum

Lecture 151 CODING INTERVIEW QUESTION(Medium): Partition Equal Subset Sum

Section 13: Day 13: Dynamic Programming Type - LCS ( Longest Common Subsequence)

Lecture 152 Day 13 Goals

Lecture 153 CODING INTERVIEW QUESTION(Medium): LCS

Lecture 154 Approach 1: Recursion

Lecture 155 Pseudocode

Lecture 156 Recursion Tree and Complexity Analysis

Lecture 157 Python Code: LCS

Lecture 158 Approach 2: Memoization

Lecture 159 Python Code: Memoization - LCS

Lecture 160 Approach 3: Tabulation

Lecture 161 Tabulation: Complexity Analysis

Lecture 162 Python Code : Tabulation - LCS

Lecture 163 Approach 4: Space Optimised Tabulation - LCS

Lecture 164 Python Code : Space Optimised Tabulation - LCS

Lecture 165 CODING INTERVIEW QUESTION(Medium): Edit Distance

Lecture 166 Identifying this as an LCS Type Question

Lecture 167 Approach 1: Recursion

Lecture 168 Pseudocode

Lecture 169 Recursion: Complexity Analysis

Lecture 170 Python Code: Recursive Approach(Edit Distance)

Lecture 171 Approach 2: Memoization

Lecture 172 Python Code: Memoization(Edit Distance)

Lecture 173 Approach 3: Tabulation

Lecture 174 Tabulation: Complexity Analysis

Lecture 175 Python Code: Tabulation (Edit Distance)

Lecture 176 Approach 4: Space Optimised Tabulation

Lecture 177 Python Code: Space Optimised Tabulation ( Edit Distance)

Section 14: Day 14: Dynamic Programming Type - LIS ( Longest Increasing Subsequence)

Lecture 178 Day 14 Goals

Lecture 179 CODING INTERVIEW QUESTION(Medium): Longest Increasing Subsequence (LIS)

Lecture 180 Approach 1: Recursion - LIS

Lecture 181 Recursion Tree

Lecture 182 Complexity Analysis - Recursion - LIS

Lecture 183 Python Code - Recursion - LIS

Lecture 184 Approach 2: Memoization

Lecture 185 Complexity Analysis - Memoization

Lecture 186 Python Code - Memoization - LIS

Lecture 187 Approach 3: Tabulation - using a 2D dp array

Lecture 188 Dry run

Lecture 189 Complexity Analysis - Tabulation - using a 2D dp array

Lecture 190 Python Code - Tabulation using a 2D dp array - LIS

Lecture 191 Approach 4: Tabulation - using a 1D dp array

Lecture 192 Dry run

Lecture 193 Complexity Analysis- Tabulation - using a 1D dp array

Lecture 194 Python Code-Tabulation - using a 1D dp array

Lecture 195 Approach 5: using Binary Search - LIS

Lecture 196 Part 1 - Approach 5: using Binary Search - LIS

Lecture 197 Part 2 - Approach 5: using Binary Search - LIS

Lecture 198 Binary Search for this question ( refer Binary Search section for more details)

Lecture 199 Complexity Analysis - Approach 5: using Binary Search - LIS

Lecture 200 Python Code - Approach 5: using Binary Search - LIS

Lecture 201 CODING INTERVIEW QUESTION(Medium): Max Length of Pair Chain

Lecture 202 CODING INTERVIEW QUESTION(Hard): Russian Doll Envelopes

Section 15: Day 15: Dynamic Programming Type - Gap Strategy / Length wise Iteration

Lecture 203 Day 15 Goals

Lecture 204 Introduction to Gap Strategy or Length wise Iteration

Lecture 205 CODING INTERVIEW QUESTION(Medium): Palindromic Substrings

Lecture 206 Intuition for Approach

Lecture 207 Indetifying this as a DP question

Lecture 208 Approach: Recursion with memoization

Lecture 209 pseudocode

Lecture 210 Filling the Memoization table

Lecture 211 iterate length wise

Lecture 212 Recursion with memoization: Complexity analysis

Lecture 213 Python Code: Recursion with memoization

Lecture 214 Tabulation approach

Lecture 215 Tabulation approach: Complexity Analysis

Lecture 216 Python Code: Tabulation

Lecture 217 CODING INTERVIEW QUESTION(Medium): Longest Palindromic Substring

Lecture 218 CODING INTERVIEW QUESTION(Medium): Longest Palindromic Subsequence

Section 16: Day 16: Dynamic Programming Type - Partition Method

Lecture 219 Day 16 Goals

Lecture 220 Introduction to the Partition method

Lecture 221 CODING INTERVIEW QUESTION(Medium): Palindrome Partitioning

Lecture 222 Approach

Lecture 223 Pseudocode

Lecture 224 Side note: Computing n C r

Lecture 225 Complexity Analysis

Lecture 226 Python Code: Palindrome Partitioning

Lecture 227 CODING INTERVIEW QUESTION(Hard):Palindrome Partitioning 2 ( Minimum Cuts) - Hard

Lecture 228 Approach 1: Recursion

Lecture 229 Python Code: Recursion - Palindrome Partitioning 2

Lecture 230 Approach 2: Memoization

Lecture 231 Python Code: Memoization - Palindrome Partitioning 2

Lecture 232 Tabulation - Approach A : Palindrome Partitioning 2

Lecture 233 Dry Run

Lecture 234 Pseudocode

Lecture 235 Python Code : Tabulation - Approach A : Palindrome Partitioning 2

Lecture 236 Complexity Analysis

Lecture 237 Tabulation - Approach B : Palindrome Partitioning 2

Lecture 238 Dry run

Lecture 239 Pseudocode

Lecture 240 Python Code: Tabulation - Approach A : Palindrome Partitioning 2

Lecture 241 Complexity Analysis

Section 17: Day 17: Dynamic Programming Type - Partition Method

Lecture 242 Day 17 Goals

Lecture 243 CODING INTERVIEW QUESTION(Medium): Word Break

Lecture 244 CODING INTERVIEW QUESTION(Hard): Matrix Chain Multiplication

Section 18: Day 18: Dynamic Programming Type - Kadane's Algorithm

Lecture 245 Day 18 Goals

Lecture 246 CODING INTERVIEW QUESTION (Medium): Max Subarray

Lecture 247 CODING INTERVIEW QUESTION (Medium): Maximum Product Subarray

Section 19: Day 19: Arrays Data Structures and Algorithms

Lecture 248 Day 19 Goals

Lecture 249 Coding Interview Q1(Medium): Rotate Array

Lecture 250 Method and Big O analysis

Lecture 251 PYTHON Code Solution

Lecture 252 Python Code Method 2

Lecture 253 Coding Interview Q2(Medium): Container with most water

Lecture 254 Method 1 and Big O analysis

Lecture 255 PYTHON Code Method 1

Lecture 256 Method 2 and Big O analysis

Lecture 257 PYTHON Code Method 2

Section 20: Day 20: Dictionaries / Hash Tables Data Structures and Algorithms

Lecture 258 Day 20 Goals

Lecture 259 Hash Table: Data Structures Crash Course

Lecture 260 Coding Interview Q1(Easy): Two Sum

Lecture 261 Method 1, Big O analysis

Lecture 262 PYTHON Code

Lecture 263 Method 2, Big O analysis

Lecture 264 PYTHON Code

Lecture 265 Coding Interview Q2(Easy): Isomorphic Strings

Lecture 266 Method and Big O analysis

Lecture 267 PYTHON Code

Section 21: Day 21 : Strings Data Structures and Algorithms

Lecture 268 Day 21 Goals

Lecture 269 Data Structures Crash Course: Strings

Lecture 270 Coding Interview Q1(Easy): First Non Repeating Character

Lecture 271 Method 1 and Big O analysis

Lecture 272 PYTHON code

Lecture 273 Method 2 and Big O analysis

Lecture 274 PYTHON code

Lecture 275 Coding Interview Q2(Easy): Is Palindrome ?

Lecture 276 Method 1 and Big O analysis

Lecture 277 PYTHON code

Lecture 278 Method 2 and Big O analysis

Lecture 279 PYTHON code

Lecture 280 Method 3 and Big O analysis

Lecture 281 PYTHON code

Section 22: Day 22: Strings Data Structures and Algorithms

Lecture 282 Day 22 Goals

Lecture 283 Coding Interview Q1(Medium): Longest Sub string with Unique characters

Lecture 284 Method and Big O analysis

Lecture 285 PYTHON code

Lecture 286 Coding Interview Q2(Medium): Group Anagrams

Lecture 287 method and Big O analysis

Lecture 288 PYTHON code

Section 23: Day 23: Searching Algorithms

Lecture 289 Day 23 Goals

Lecture 290 Coding Interview Q1 (Easy): Binary Search Algorithm

Lecture 291 Method and Big O analysis

Lecture 292 PYTHON Code Iterative

Lecture 293 PYTHON Code Recursive

Lecture 294 Coding Interview Q2(Medium): Search in rotated sorted array

Lecture 295 Method and Big O analysis

Lecture 296 PYTHON Code

Section 24: Day 24: Searching Algorithms

Lecture 297 Day 24 Goals

Lecture 298 Coding Interview Q1(Medium): Search for range

Lecture 299 Method and Big O analysis

Lecture 300 PYTHON Code - Recursive

Lecture 301 PYTHON Code - Iterative

Lecture 302 Coding Interview Q2(Medium): Search in Matrix

Lecture 303 method and Big O analysis

Lecture 304 PYTHON code

Section 25: Day 25: Sorting Algorithms

Lecture 305 Day 25 Goals

Lecture 306 Coding Interview Q1: Bubble Sort Algorithm

Lecture 307 Method and Big O analysis

Lecture 308 Python Code

Lecture 309 Coding Interview Q2: Insertion Sort Algorithm, Big O analysis

Lecture 310 Python code

Lecture 311 Insertion sort is a stable sorting Algorithm

Section 26: Day 26: Sorting Algorithms

Lecture 312 Day 26 Goals

Lecture 313 Coding Interview Q1: Selection Sort Algorithm, Big O analysis

Lecture 314 Python Code

Lecture 315 Coding Interview Q2: Merge Sort Algorithm

Lecture 316 Method and Big O analysis

Lecture 317 Python Code

Section 27: Day 27: Sorting Algorithms

Lecture 318 Day 27 Goals

Lecture 319 Coding Interview Q1: Quick Sort Algorithm

Lecture 320 Optimise Time Complexity

Lecture 321 Optimise Space Complexity

Lecture 322 Python Code

Lecture 323 Coding Interview Q2: Radix Sort Algorithm, Big O analysis

Lecture 324 Python Code

Section 28: Day 28 Singly Linked List Data Structures and Algorithms

Lecture 325 Day 28 Goals

Lecture 326 Data Structures Crash Course: Linked Lists

Lecture 327 Coding Interview Q1(Medium): Design a Singly Linked List

Lecture 328 Method and Big O analysis

Lecture 329 Python Code

Lecture 330 Coding Interview Q2: Remove Duplicates

Lecture 331 Method and Big O analysis

Lecture 332 Python Code

Section 29: Day 29 Singly Linked List Data Structures and Algorithms

Lecture 333 Day 29 Goals

Lecture 334 Coding Interview Q1(Easy): Reverse

Lecture 335 Method and Big O analysis

Lecture 336 Python Code

Lecture 337 Coding Interview Q2(Medium) : Cycle Detection

Lecture 338 Method and Big O analysis

Lecture 339 Python Code

Lecture 340 proof

Section 30: Day 30 : Singly Linked List Data Structures and Algorithms

Lecture 341 Day 30 Goals

Lecture 342 Coding Interview Q1(Medium): Find duplicate number

Lecture 343 method and Big O analysis

Lecture 344 Python code

Lecture 345 Coding Interview Q2(Medium): Add 2 numbers

Lecture 346 method and Big O analysis

Lecture 347 Python code

Section 31: Day 31 Doubly Linked List Data Structures and Algorithms

Lecture 348 Day 31 Goals

Lecture 349 Coding Interview Q1: Remove Node, Insert Node

Lecture 350 Method remove

Lecture 351 Python code: Remove

Lecture 352 Insert Intro

Lecture 353 Method Insert

Lecture 354 Python code: Insert

Lecture 355 Coding Interview Q2: Remove Value, Insert at Position in Doubly Linked List

Lecture 356 Remove Val Method

Lecture 357 Python Code

Lecture 358 Insert at Position

Lecture 359 method

Lecture 360 Python Code

Section 32: Day 32: Stacks Data Structures and Algorithms

Lecture 361 Day 32 Goals

Lecture 362 Data Structures Crash Course: Stacks and Queues

Lecture 363 Coding Interview Q1: Design a Stack

Lecture 364 Python Code

Lecture 365 Coding Interview Q2(Medium): Reverse Polish Notation

Lecture 366 method and Big O analysis

Lecture 367 Python Code

Section 33: Day 33: Queue Data Structures and Algorithms

Lecture 368 Day 33 Goals

Lecture 369 Coding Interview Q1: Design a Queue

Lecture 370 Python Code

Lecture 371 Coding Interview Q2(Easy) : Queue with Stack

Lecture 372 method and Big O analysis

Lecture 373 Python Code

Section 34: Day 34: Binary Tree / Binary Search Tree Data Structures and Algorithms

Lecture 374 Day 34 Goals

Lecture 375 Data Structures Crash Course: Trees Introduction

Lecture 376 Theory: Binary Trees 1

Lecture 377 Proof : height of Balanced Binary tree is floor(log N)

Lecture 378 Theory: Binary Tree Terminaologies

Lecture 379 What is a BST - Binary Search Tree

Lecture 380 Coding Interview Q1: Construct Binary Search Tree,Big O analysis

Lecture 381 Python Code

Lecture 382 Coding Interview Q2 : Traverse - BFS and DFS,Big O analysis

Lecture 383 Python Code

Section 35: Day 35: Binary Tree / Binary Search Tree Data Structures and Algorithms

Lecture 384 Day 35 Goals

Lecture 385 Coding Interview Q1(Medium): Level Order traversal

Lecture 386 Insert method

Lecture 387 Python code

Lecture 388 Level Order Traversal Method and Big O analysis

Lecture 389 Python code - Level order traversal

Lecture 390 Coding Interview Q2(Medium): Left / Right view

Lecture 391 Method and Big O analysis

Lecture 392 Python code

Section 36: Day 36: Binary Tree Data Structures and Algorithms

Lecture 393 Day 36 Goals

Lecture 394 Coding Interview Q1 (Easy): Invert Binary Tree

Lecture 395 Iterative method and Big O analysis

Lecture 396 Python Code: Iterative

Lecture 397 Recursive method and Big O analysis

Lecture 398 Python Code: Recursive

Lecture 399 Coding Interview Q2 (Easy): Diameter of Binary Tree

Lecture 400 Method and Big O analysis

Lecture 401 Python Code

Section 37: Day 37: Binary Search Trees Data Structures and Algorithms

Lecture 402 Day 37 Goals

Lecture 403 Coding Interview Q1(Easy): sorted array to BST

Lecture 404 method and Big O analysis

Lecture 405 Python code

Lecture 406 Coding Interview Q2(Medium) : Valid BST

Lecture 407 Method and Big O analysis

Lecture 408 Python Code

Section 38: Day 38: Heaps and Priority Queue Data Structures and Algorithms

Lecture 409 Day 38 Goals

Lecture 410 Binary Heap: Data Structure Crash Course

Lecture 411 Coding Interview Q1: Construct Max Binary Heap, Big O analysis

Lecture 412 Proof of Build Binary Heap Time Complexity

Lecture 413 Python Code

Lecture 414 Introduction to Priority Queue

Lecture 415 Coding Interview Q2: Construct Priority Queue,Big O analysis

Lecture 416 Python Code

Section 39: Day 39: Graphs Data Structures and Algorithms

Lecture 417 Day 39 Goals

Lecture 418 Coding Interview Q1: BFS, Adjacency List,Big O analysis

Lecture 419 Python Code

Lecture 420 BFS, Adjacency Matrix

Lecture 421 Python Code

Lecture 422 Coding Interview Q2: DFS, Recursive, Big O analysis

Lecture 423 Python Code

Lecture 424 DFS Iterative

Lecture 425 Python Code

Section 40: Day 40: Graphs Data Structures and Algorithms

Lecture 426 Day 40 Goals

Lecture 427 Coding Interview Q1: Number of Components, Big O analysis

Lecture 428 Python Code

Lecture 429 Coding Interview Q2(Medium): Course Scheduler

Lecture 430 Brute Force Method and Big O analysis

Lecture 431 Python Code - Brute Force Method

Lecture 432 Topological Sort based method and Big O analysis

Lecture 433 Python Code

Folks looking to get into top Tech companies in Software Engineering roles,Folks looking to ace the DSA part in Data Science Interview,Self taught programmers looking for their first job,Experienced developers wanting to get into MAANG companies ( top tech firms)