Data Structures Algorithms, DSA ,BigO Analysis for every Question, Coding Interview,DP,Backtracking,Data Structures
Summary
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 Data Structures and Algorithms 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 Data Structures and Algorithms 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 approach
- Explain time and space complexity
- Code 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 Array
- Day 2:Recursion,k-th symbol in Grammar,Josephus problem
- Day 3:Recursion, Tower of Hanoi, Power Sum
- Day 4:Backtracking, Permutations, Permutations 2
- Day 5:Backtracking, Subsets, Subsets 2
- Day 6:Backtracking, Combinations, Combinations Sum 1
- Day 7:Backtracking,Combinations Sum 2,Combinations Sum 3
- Day 8:Backtracking,Sudoku Solver, N Queens
- Day 9:Dynamic Programming, Fibonacci, Climbing Stairs
- Day 10:Dynamic Programming, Min Cost Climbing Stairs, Tribonacci
- Day 11:Dynamic Programming, 01 Knapsack, Unbounded Knapsack
- Day 12:Dynamic Programming, Target Sum, Partition Equal Subset Sum
- Day 13:Dynamic Programming, LCS, Edit Distance
- Day 14:Dynamic Programming, LIS, Max Length of Pair Chain, Russian Doll Envelopes
- Day 15:Dynamic Programming, Palindromic Substrings, Longest Palindromic Substring, Longest Palindromic Subsequence
- Day 16:Dynamic Programming, Palindrome Partitioning, Palindrome Partitioning 2
- Day 17:Dynamic Programming, Word Break, Matrix Chain Multiplication
- Day 18:Dynamic Programming, Kadane’s algorithm – Max Subarray, Maximum Product Subarray
- Day 19: Arrays, Rotate Array, Container with Most Water
- Day 20: Hash Tables, Two Sum, Isomorphic Strings
- Day 21: Strings, Non-Repeating Character, Palindrome
- Day 22: Strings, Longest Unique Substring, Group Anagrams
- Day 23: Searching, Binary Search, Search in Rotated Sorted Array
- Day 24: Searching, Find First and Last Position, Search in 2D Array
- Day 25: Sorting, Bubble Sort, Insertion Sort
- Day 26: Sorting, Selection Sort, Merge Sort
- Day 27: Sorting, Quick Sort, Radix Sort
- Day 28: Singly Linked Lists, Construct SLL, Delete Duplicates
- Day 29: Singly Linked Lists, Reverse SLL, Cycle Detection
- Day 30: Singly Linked Lists, Find Duplicate, Add 2 Numbers
- Day 31: Doubly Linked Lists, DLL Remove Insert, DLL Remove All
- Day 32: Stacks, Construct Stack, Reverse Polish Notation
- Day 33: Queues, Construct Queue, Implement Queue with Stack
- Day 34: Binary Trees, Construct BST, Traversal Techniques
- Day 35: Pre order and In order Traversal of Binary Tree – Iterative
- Day 36: Post Order Traversal Iterative, Path Sum 2
- Day 37: Construct Binary Tree from Pre and In order Traversal ^ In and Post order Traversal
- Day 38: Binary Trees, Level Order Traversal, Left/Right View
- Day 39: Level order Trav 2, ZigZag Traversal
- Day 40: Vertical order Traversal, Sum root to leaf numbers
- Day 41: Binary Trees, Invert Tree, Diameter of Tree
- Day 42: Binary Trees, Convert Sorted Array to BST, Validate BST
- Day 43: Lowest common Ancestor of BST, Unique BST 2
- Day 44: Lowest common Ancestor of Binary Tree, Unique BST 1
- Day 45: Serialize and Deserialize Binary Tree, N-ary Tree Level Order Traversal
- Day 46: Heaps, Max Heap, Min Priority Queue
- Day 47: Graphs, BFS, DFS
- Day 48: Graphs, Number of Connected Components, Topological Sort
- Day 49: Number of Provinces, Find if path exists in Graph
- Day 50: Number of Islands, Numbers with same consecutive differences
So what are you waiting for? Join the best Python Data Structures & Algorithms Bootcamp on Udemy.
Who this course is for:
- 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)