add optimalBST