recursive recover binary tree