Medium data structure and algorithm practice puzzle.
Given objects as an adjacency list of references and a list of root objects, return how many objects can't be reached from any root. Start from the roots and mark everything you can reach. Whatever's left unmarked is garbage. This is mark and sweep, and unlike reference counting, it also cleans up objects that only point at each other.
Solve it three ways: snap the jigsaw pieces together, fill in the blanks, or type it from scratch against the tests. This one is free.
Every line of the solution comes with a note explaining why it is there, and a step by step replay shows the code running. At level 3, where you type it yourself, you can ask for an AI mock interview on this problem that ends with a hiring manager's scorecard.
Then grow it into a real project with the Software Engineer button: this puzzle becomes the Event Blast Radius, a pipeline you can run and download. See every Software Engineer project.
Browse all 576 puzzles