Data structures via C++: Objects by evolution - Berman, Michael A (Oxford University Press, Tokyo, 2002)