Copyright © Timothy Howard Merrett
Permission to make digital or hard copies of part or all of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies
bear this notice and full citation in a prominent place. Copyright for
components of this work owned by others than T. H. Merrett must be
honoured. Abstracting with credit is permitted. To copy otherwise, to
republish, to post on servers, or to redistribute to lists, requires prior
specific permission and/or fee. Request permission to republish from:
T. H. Merrett, School of Computer Science, McGill University, fax 514 398 3883.
The author gratefully acknowledges support from the taxpayers of Québec and
of Canada who have paid his salary and research grants while this work was
developed at McGill University, and from his students (who built the
implementations and investigated the data structures and algorithms) and their
funding agencies.