Searching
Also known as: Search, Search algorithm
Searching finds a target key (or reports absence) in a collection. Cost depends on structure: unsorted array or list needs linear search; sorted array admits binary search; hash tables aim for expected $O(1)$; trees and graphs use walks such as BST search, BFS, and DFS.
Coder view: pick the structure for the query mix you actually have. Sorting once to enable binary search pays off for many lookups. Hashing wins for equality membership. Graphs need an explicit traversal, not an array index.
Exams usually want the invariant and complexity, not the library call: loop bounds for binary search, visited-set for graph search, expected vs worst case for hashing.