| Basics | 1. recursive functions |
| 2. Int, long, float, double (memory size) | |
| 3. bit operations : &, |, ^, <<, >>, ~ | |
| 4. big integers(>=10^19) +, -, * operations (without API like BigInteger) | |
| Search & Sort | 5. depth-first & breadth-first search |
| 6. time & space complexity | |
| 7. binary search | |
| 8. bubble sort | |
| 9. quick sort vs. merge sort (pros & cons) | |
| 10. counting sort & radix sort | |
| 11. largest rectangular in histogram in O(n) | |
| Data Structure | 12. stack, queue, deque(double ended queue) |
| 13. Vector(ArrayList) vs. List(LinkedList) (pros & cons) | |
| 14. Heap(Priority Queue) push(), pop() | |
| 15. DSU(Disjoint Set Union) & Union Find + path compression | |
| 16. Indexed Tree & Sparse Table + range sum / min / max | |
| Probability | 17. permutations (multiset, circular, bracelet, complete) |
| 18. combinations (with duplicated numbers, Binomial theorem, Pascal’s triangle, Catalan numbers) | |
| 19. conditional probability (Bayesian) | |
| 20. Binomial Distribution, Gaussian Distribution | |
| Discrete Math | 21. Euler’s Totient function using (not GCD but) sieve of Eratosthenes |
| 22. Fermat’s little theorem, modular multiplicative inverse | |
| 23. Extended Euclidean Algorithm | |
| 24. Chinese remainder theorem | |
| 25. calculate the number of cases, using Inclusion–exclusion principle | |
| Graph | 26. Adjacency matrix vs. Adjacency list (pros & cons) |
| 27. Dijkstra, Floyd-Warshall, Bellman-Ford algorithm | |
| 28. Prim’s algorithm, Kruskal’s algorithm to get MST(Minimum Spanning Tree) | |
| 29. DAG(Directed Acyclic Graph) | |
| 30. LCA(Lowest Common Ancestor) in Time O(log n) | |
| 31. Find Articulation Points & Bridges of bidirectional graph | |
| 32. Network Flow theory | |
| String | 33. String match with KMP, Rabin-Karp fingerprinting, Suffix Array & LCP |
| 34. String to Trie | |
| 35. Aho-Corasick algorithm | |
| Geometry | 36. CCW(Counter ClockWise) function & vector outer product |
| 37. shoelace formula (to calculate polygon area) | |
| 38. collision detection of two lines & point detection inside a polygon (using CCW function) | |
| 39. Convex hull using CCW function; Time O(n log n) | |
| 40. Plane Sweeping (Overlapping rectangles) | |
| Dynamic Prgramming | 41. Top-down, Bottom-up, Recursive (Pros & Cons) |
| 42. Base cases, Value function, Memoization | |
| 43. well-known problems (Knapsack, LIS, Bit Mask DP) |
There is a link to this document too.
![]()