Introduction to data structures and algorithms - Storer. James A (2002)