Start here
DSA practice
Timed coding drills. The first worked problem is a four-part dependency resolver for the Mercor graph block.
This track holds drills you want to reread, not a second copy of every LeetCode statement.
For Mercor’s coding block, the structure to have in your hands is: BFS and DFS, Kahn’s topological sort, directed cycle detection, union-find, and Dijkstra. The language is C++. The toolkit is the heap and the pair hash. The dependency resolver is a four-part mock you can time at 60 minutes: can we install, in what order, name one cycle, then the parallel install time. Say the structure in the first five minutes. Prefer unordered_map and functions. Write a test for empty input, a cycle, and a disconnected node. State complexity per part without being asked. The company tab still has the shorter ladder (course schedule through the harder DAG problems) if you want more reps of the same idea.
For a service-shaped coding round (DoorDash-style), the algorithm is wrapped in a service: read the given types, run the given test, then handle status codes. The company tab has that checklist. If std::sort is banned, write merge sort.
When the next drill is worth keeping, add src/content/pages/dsa/<name>.md with track: dsa. Include a solution you wrote, the complexity, the tests, and a quiz. The sidebar lists it next to this page because the track is already in src/content/tracks.json. A good second page is union-find (accounts merge) or “cheapest flights within K stops,” where plain Dijkstra is the wrong tool.
Further reading
Check yourself
Answer the questions. Multiple choice is scored on this device only.
1. In a 60-minute multi-part coding block, what should you protect first?
2. Where do you look before you start the dependency resolver?