zoukankan      html  css  js  c++  java
  • Day 27

    第95题:

    给定一个整数 n,生成所有由 1 ... n 为节点所组成的 二叉搜索树 。来源:力扣(LeetCode)

    输入:3
    输出:
    [
      [1,null,3,2],
      [3,2,null,1],
      [3,1,null,null,2],
      [2,1,3],
      [1,null,2,null,3]
    ]
    解释:
    以上的输出对应以下 5 种不同结构的二叉搜索树:

    1 3 3 2 1
    / / /
    3 2 1 1 3 2
    / /
    2 1 2 3

    1、对于利用1到n这些数来组成一棵二叉搜索树,可以组成很多种不同的二叉搜索树;  

      二叉搜索树需要确定一个根节点,然后他的左子树所有节点都必须小于根节点的值,右子树所有节点都必须大于根节点的值;

      而且这个规则所有子树和它的左右子树都必须满足;

         我们遍历数组,确定一个根节点 i ,那么他的左子树就肯定时由(1…i-1)组成,右子树一定是有(i+1…n)组成;

      我们就可以递归将(1…i-1)和(i+1…n)分别组件成一棵二叉搜索树,然后将其分别作为 i 的左右子树;

      这样一直递归其实最后组成的就是

      

  • 相关阅读:
    linux-who
    Linux开机禁用开启防火墙
    linux环境vnc安装
    NFS配置及开机自动挂载
    yum list失败
    镜像文件挂载及本地yum搭建
    weblogic在64位windows的设置
    linux操作系统语言更改
    Linux磁盘空间扩容(LVM)
    Nginx 拒接服务漏洞(CVE-2016-0747)整改
  • 原文地址:https://www.cnblogs.com/liang-yi-/p/13358244.html
Copyright © 2011-2022 走看看