- LeetCode 202 – Happy Number
Linked List Cycle with the list replaced by a function. No nodes, no next pointer, and Floyd's algorithm works anyway — which is the point: cycle detection needs a successor function, not a data structure. Plus why the sequence must terminate at all.
- LeetCode 200 – Number of Islands
The most common graph question in interviews, and it does not look like one — recognising that a grid is a graph is most of what is being tested. Count starts and erase the island so it cannot be counted twice. Why you must mark visited before recursing, the input-mutation trade to say out loud, and when the recursion depth forces BFS.
- LeetCode 199 – Binary Tree Right Side View
The clearest illustration that how you traverse and what you record are independent: level order with one line changed. The visible node may be a LEFT child — rightmost at its depth, not on the right spine — which is what any walk-down-the-right-side answer gets wrong.
- LeetCode 198 – House Robber
The DP that introduces a choice: Climbing Stairs counted branches and added them, this picks the better of two. Same dependencies, different combiner. And the alternating greedy everyone proposes fails on [2,1,1,2], where the best answer skips two houses in a row.
- AWS – KMS and Encryption at Rest
Encryption at rest is a checkbox until something needs decrypting from another account. Customer managed keys versus AWS managed keys and the cost and control that separates them, envelope encryption in one diagram, and the key policy — which is the resource policy that IAM alone cannot override. Rotation, aliases, and the deletion window that is the only irreversible button in the service.