import java.util.Scanner; /** * 设dp(n)表示有n个结点时搜索二叉树有多少种可能,则 * * Ⅰ.当头结点的值为1时,左子树为空,右子树上有n - 1个结点,右子树的搜索二叉树个数为dp(n - 1) * ... * Ⅱ.当头结点的值为i(1 < i < n)时,左子树由结点1—>i-1构成,右子树由结点i+1—>n构成;左子树的搜索二叉树个数为dp(i-1),右子树的搜索二叉树个数为dp(n - i);此时搜索二叉树总的个数为dp(i - 1) * dp(n - i) &n...