CLRS Problem 18-2

CLRS Problem 18-2a
CLRS Problem 18-2b
CLRS Problem 18-2c