Three data structures explain 80% of algorithm interview problems:

**Hash map**: O(1) lookup. First reach for it whenever you need to count, group, or look up by key.

**Stack/queue**: problems involving "process in order" or "undo" structure. Monotonic stack patterns solve a surprising range of range-maximum/minimum problems.

**Two pointers / sliding window**: linear-scan problems on sorted arrays or strings. Eliminates the nested-loop O(n²) that brute force usually produces.

The fourth: heap/priority queue, for "k-th largest" or "merge k sorted lists" families.

Most interview problems combine two of these. Recognition is the skill.