Data structure and algorithms: an object-oriented approach using ada 95 - Beidler, John . (Springer, 1996)