Data structures via C++ objects by evolution - Berman, A Michael (Oxford university press, New York, 1997)