当前位置: 首页 > news >正文

网站建设三合一 500元广州安全教育平台账号登录入口

网站建设三合一 500元,广州安全教育平台账号登录入口,网站建设需要数学,外链交易平台📝个人主页:五敷有你 🔥系列专栏:算法分析与设计 ⛺️稳中求进,晒太阳 题目 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最…

       📝个人主页:五敷有你      

 🔥系列专栏:算法分析与设计

⛺️稳中求进,晒太阳

题目

给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建:

  1. 创建一个根节点,其值为 nums 中的最大值。
  2. 递归地在最大值 左边 的 子数组前缀上 构建左子树。
  3. 递归地在最大值 右边 的 子数组后缀上 构建右子树。

返回 nums 构建的 最大二叉树 

示例

示例 1:

输入:nums = [3,2,1,6,0,5]
输出:[6,3,5,null,2,0,null,null,1]
解释:递归调用如下所示:
- [3,2,1,6,0,5] 中的最大值是 6 ,左边部分是 [3,2,1] ,右边部分是 [0,5] 。- [3,2,1] 中的最大值是 3 ,左边部分是 [] ,右边部分是 [2,1] 。- 空数组,无子节点。- [2,1] 中的最大值是 2 ,左边部分是 [] ,右边部分是 [1] 。- 空数组,无子节点。- 只有一个元素,所以子节点是一个值为 1 的节点。- [0,5] 中的最大值是 5 ,左边部分是 [0] ,右边部分是 [] 。- 只有一个元素,所以子节点是一个值为 0 的节点。- 空数组,无子节点。

示例 2:

输入:nums = [3,2,1]
输出:[3,null,2,null,1]

思路

用递归实现,construct(int[] nums,int left,int right)。

表示对数组nums从nums[left]到nums[right] 的元素构建一棵树。我们首先找到这一区间中的最大值,记为nums[best].这样就确定了根节点的值。随后我们就可以进行递归:

左子树为  construct(nums,left,best−1);

右子树为 construct(nums,left,best−1)

当递归到一个无效的区间(即 left>right)时,便可以返回一棵空的树.

代码实现

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public TreeNode constructMaximumBinaryTree(int[] nums) {return construct(nums,0,nums.length-1);}public TreeNode construct(int[] nums,int left,int right){if(left>right){return null;}int best=left;for(int i=left;i<=right;i++){best=nums[best]>nums[i]?best:i;}TreeNode node=new TreeNode();node.val=nums[best];node.left=func(nums,left,best-1);node.right=func(nums,best+1,right);return node;}
}

运行结果

时间复杂度O(n^2)

空间复杂度O(n)

http://www.yayakq.cn/news/815282/

相关文章:

  • 找网站做网络设计总结
  • 松江企业做网站phonegap wordpress
  • 织梦网站动态网站建设需要个体营业执照吗
  • 2014最新网站模板-网页模板免费下载-风格吧自建网站如何在百度上查到
  • 做暧暧免费网站seo基础优化包括哪些内容
  • 算命网站建设开发做网站工资多少
  • 泉州网页网站制作哈尔滨网站建设招聘
  • 无锡模板建站大学专业宣传网站开发课题意义
  • 网站js下载如何修改自己的网站标题
  • 房天下官方网站做网站如何团队分工
  • 淄博网站建设优化搭建wordpress程序
  • 苏州建网站哪个好厦门建设局网站
  • 天水网站建设博客wordpress文件详情
  • 做微信公众号网站源码制作营销型网站的公司
  • wordpress仿站教学WordPress免费自动采集
  • 网页设计做军事网站的感想gif8.net基于wordpress
  • 双语言网站源码生意网app下载官网
  • 怎样在浏览器上找网站网站建设的目的及功能定位是啥
  • 什么是单页面网站专题网站建设的请示
  • 沈阳网站订制微信公众平台开发文档
  • 做电影网站的资源从哪里换外贸类网站建设
  • 网站型销售怎么做的建筑专业网站建设
  • 网站网址怎么写网站简历文字如何空行
  • 景安做网站教程网站模板和源码
  • 网站开发授权书北京seo实战培训班
  • 在网站底部给网站地图做链接怎么简单制作一个网页
  • 网站建设步和客户沟通石家庄网站建设德信互联科技有限公司
  • 网站开发工期安排基层建设网站是不是停办了
  • 房产中介网站建设模板莱钢建设网站
  • wordpress附件上传FTPseo技能培训课程