Used for scheduling and planning.

**Problem:** Need data structure that determines if any of a
stored set of intervals overlaps a given interval. We want to perform all
associated operations in O(lg n) time.

Define a closed interval object i as [*t*_{1}, *t*_{2}] such that
, low(i) =*t*_{1}, and high(i) = *t*_{2}.

Overlap(*i*_{1}, *i*_{2})

1
if low(*i*_{1}) high(*i*_{2}) and low(*i*_{2}) high(*i*_{1})

2
then return True

3
else return False

Does [2, 7] overlap [5, 8]? Yes. 2 is less than 8, and 5 is less than 7, points 6, 7 common to both.