📜  门| GATE-CS-2003 |问题 6

📅  最后修改于: 2021-09-27 05:45:41             🧑  作者: Mango

设 T(n) 是 n 个不同元素上的不同二叉搜索树的数量。
然后GATECS2003Q7 ,其中 x 是
(A) n-k+1
(B) nk
(C) NK-1
(D) NK-2答案:(乙)
解释:这个想法是制作一个密钥根,将 (k-1) 个密钥放在一个子树中,其余的 nk 个密钥放在另一个子树中。

二叉搜索树(BST)是一棵树,其中所有节点都遵循以下属性 –

  • 节点的左子树的键小于或等于其父节点的键。
  • 节点的右子树的键大于其父节点的键。

现在从 n 个不同的数字构建二叉搜索树 –
为简单起见,我们将 n 个不同的数字视为前 n 个自然数(从 1 开始)
如果 n=1我们只有一种可能性,因此只有 1 个 BST。
如果 n=2我们有 2 种可能性,当较小的数字是根,较大的数字是右孩子或第二个,当较大的数字是根,较小的数字是左孩子。

parul_1

如果 n=3我们有 5 种可能性。首先将每个数字作为根,然后在 n=2 的情况下排列剩余的 2 个数字。

parul_2

如果 n=4我们有 14 种可能性。以每个数为根,将小数排列为左子树,将较大数排列为右子树。
parul_4

因此我们可以得出结论,对于 n 个不同的数字,如果我们以 ‘k’ 作为根,那么所有小于 k 的数字将成为左子树,大于 k 的数字将成为右子树,其中右子树和左子树将再次递归构造像根。
所以,

Parul5

该解决方案由Parul Sharma 提供。
这个问题的测验