The model
Search and sorting choices depend on what is already known about the data and what operations the product needs. A sorted array supports binary search because its order lets each comparison eliminate half the remaining candidates. An unsorted collection cannot safely use that shortcut.
A concrete walk-through
If a dataset is queried once, sorting solely to run one binary search may cost more than a linear scan. If it will serve thousands of lookups, paying the sort cost once can be worthwhile. Merge sort preserves equal-key order when implemented stably; quicksort often has strong locality but can have quadratic worst-case behavior without safeguards.
Costs and failure cases
Sorting is not free metadata: updates can invalidate order, and duplicate handling affects semantics. Binary search also requires a precise boundary convention; off-by-one errors often appear when the target is absent or repeated. For large data, external sorting must account for disk reads and writes.
Check your understanding
Given repeated lookup, frequent insertion, and duplicate keys, compare a sorted array, balanced search tree, and hash table. Explain which requirement changes your choice.