Algorithms and computation (Springer-Verlag, 1994)