Practice Topics
Select a topic to practice problems and examples.
Arrays
Problems and patterns using arrays: two pointers, sliding window, prefix sums.
Data Structures
Implementation and usage of trees, heaps, hash maps, linked lists and graphs.
Dynamic Programming
Top-down and bottom-up DP patterns, memoization, knapsack and sequence problems.
Java Streams
Practical examples and challenges using Java Streams, collectors and pipelines.
Sorting Algorithms
Classic sorting algorithms, complexity, and when to use each.
Recursion
Recursive problem solving, backtracking and recursion limits.