Binary search is the ultimate divide-and-conquer algorithm. To find a key k in a
large file containing keys A[1..n] in sorted order, we first compare k with A[n/2], and
depending on the result we recurse either on the first half of the file, A[1..n/2], or on
the second half, A[n/2+1..n]. The recurrence now is T(n)=T(n/2)+O(1).
Plugging into the master theorem (with a=1,b=2,d=0) we get the familiar solution: a
running time of just O(logn).