Algorithms
Learn sorting, searching, graph algorithms, dynamic programming, and algorithmic thinking.
Backtracking
Read →Master backtracking: systematic exploration of solution space by trying partial solutions and undoing choices that don't lead to solutions.
Bellman-Ford Algorithm
Read →Master Bellman-Ford algorithm for finding shortest paths in graphs with negative edge weights and detecting negative cycles.
Dijkstra's Algorithm
Read →Master Dijkstra's algorithm for finding shortest paths in weighted graphs with non-negative edge weights.
Dynamic Programming Basics
Read →Master dynamic programming: memoization, tabulation, identifying DP problems, and solving optimization problems efficiently.
Graph Traversal (DFS/BFS)
Read →Master graph traversal algorithms: Depth-First Search (DFS) and Breadth-First Search (BFS) for exploring graphs and solving graph problems.
Hashing
Read →Master hash functions, hash tables, collision resolution, and hashing algorithms for efficient data storage and retrieval.
Prefix Sum
Read →Master prefix sum technique: precompute cumulative sums to answer range sum queries in O(1) time after O(n) preprocessing.
Recursion
Read →Master recursion: base cases, recursive calls, memoization, and solving problems using recursive thinking.
Searching Algorithms
Read →Master searching algorithms: linear search, binary search, interpolation search, and their applications in coding interviews.
Sliding Window Technique
Read →Master the sliding window technique: efficiently solve subarray/substring problems by maintaining a window that slides through the array.
Sorting Algorithms
Read →Master sorting algorithms: bubble sort, merge sort, quick sort, heap sort, and their time/space complexities for coding interviews.
Strings
Read →Master string manipulation, common string algorithms, and pattern matching techniques for coding interviews.
Topological Sorting
Read →Master topological sorting: ordering vertices in a directed acyclic graph (DAG) such that for every edge (u,v), u comes before v.
Tree Traversal
Read →Master tree traversal algorithms: preorder, inorder, postorder, and level-order traversal for binary trees and n-ary trees.