ENSAE Paris - École d'ingénieurs pour l'économie, la data science, la finance et l'actuariat

Problem Solving In Data Structures & Algorithms... -

Finding the shortest path in an unweighted graph or tree level-order traversal.

Most DSA problems are variations of a few core patterns. If you recognize the pattern, the solution follows: When to Use It Problem Solving in Data Structures & Algorithms...

Dealing with "Top K" elements or frequently updated minimums/maximums. 3. The "Rubber Duck" Debugging Technique Finding the shortest path in an unweighted graph

Before writing a single line, clarify the input size. Is 10610 to the sixth power ? This tells you if an solution is acceptable or if you must aim for This tells you if an solution is acceptable

Effective problem solving in isn’t just about knowing code; it’s about having a repeatable mental framework to dismantle complexity. Whether you're prepping for interviews or optimizing production code, here is the blueprint for mastering the logic. 1. The Strategy: The "Three-Pass" Approach

A solution is only as good as its handling of the "weird stuff." Always test for: (null, empty strings, 0). Single elements (an array of size 1). Large inputs (integer overflows). Duplicates (especially in sorting or searching). The Golden Rule

Always identify the "Brute Force" solution first. Even if it’s inefficient, it guarantees a baseline for correctness and helps you see where the bottlenecks are.