Cooper Data Structures and Algorithms 1