Author: ( MEI ) Robert Sedgewick. ( FA ) Phikippe Flajolet ZHU