【noACM】96. 不同的二叉搜索树

【noACM】96. 不同的二叉搜索树,第1张

96. 不同的二叉搜索树
  • DP

DP

首先设置有0个节点时有1种排列方式

  1. n = 0(二叉树有0个节点)时:
    结果 dp[0] = 1;
  2. n = 1(二叉树有1个节点)时:
    左节点0个 右节点0个 可排列 1 * 1
    结果:dp[1] = dp[1 - 1] * dp[0]
  3. n = 2(二叉树有2个节点)时:
    左节点1个 右节点0个 可排列 1 * 1 = 1
    左节点0个 左节点1个 可排列 1 * 1 = 1
    结果:dp[2] = dp[2 - 1] * dp[0] + dp[2 - 2] * dp[1]
  4. n = 3(二叉树有3个节点)时:
    左节点2个 右节点0个 可排列 2 * 1 = 2

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/736306.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-04-28
下一篇2022-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存