"Finding something quickly and finding the best thing quickly are two completely different engineering problems."

So far in this series, we've explored one of the most common behaviours in software systems:

Fast lookup.

Whenever a system already knows what it's looking for—a User ID, Product ID, Order ID or Session ID—a HashMap becomes an excellent choice.

But not every software problem works this way.