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

建网站需要学什么重庆建设工程安全信息管理网

建网站需要学什么,重庆建设工程安全信息管理网,广州建设工程交易中心主任,腾讯服务商平台题目 leetcode题目地址 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值。 递归地在最大值 左边 的 子数组前缀上 构建左子树。 递归地在最大值 右边 的 子数组后缀上 构建右子树。 返…

题目

leetcode题目地址

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

创建一个根节点,其值为 nums 中的最大值。
递归地在最大值 左边 的 子数组前缀上 构建左子树。
递归地在最大值 右边 的 子数组后缀上 构建右子树。
返回 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]

提示:

  • 1 <= nums.length <= 1000
  • 0 <= nums[i] <= 1000
  • nums 中的所有整数 互不相同

code

递归:

  1. 确定函数的参数和返回值。参数是数组,返回值是节点。
  2. 确定递归终止条件。当没有元素时,返回null;当只有一个元素时,证明是叶子节点了,返回该节点。
  3. 找出每一次递归的逻辑
    找出最大值的下标,将最大值作为根节点,根据最大值下标划分区别。最大值下标左边,构造左子树;最大值下标右边,构造右子树。
/*** 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 constructMaximumBinaryTreeRec(nums,0,nums.length);}public TreeNode constructMaximumBinaryTreeRec(int[] nums,int leftIndex,int rightIndex){// 没有元素了if(rightIndex - leftIndex <1){return null;}// 只有一个元素了if(rightIndex-leftIndex == 1){return new TreeNode(nums[leftIndex]);}int maxIndex = leftIndex; // 最大值的索引位置int maxVal = nums[maxIndex]; // 最大值for(int i=leftIndex+1;i<rightIndex;i++){if(nums[i]>maxVal){maxVal = nums[i];maxIndex = i;}}// 划分左右子树TreeNode node = new TreeNode(maxVal);node.left = constructMaximumBinaryTreeRec(nums,leftIndex,maxIndex);node.right = constructMaximumBinaryTreeRec(nums,maxIndex+1,rightIndex);return node;}
}
http://www.yayakq.cn/news/623188/

相关文章:

  • 怎么做捕鱼网站通化县建设局网站
  • 服装网站建设的规模和类别wordpress 注册
  • 江苏建设培训网站手工制作大全废物利用
  • 合适的网站制作需要多少钱品牌建设理论包括哪些内容
  • 唐山软件开发公司排名百度seo竞价推广是什么
  • 做食物网站应该考虑些什么全国十大外贸平台
  • 泰安网站建设推广宝塔window搭建wordpress
  • 用别人的二级域名做网站广州网站开发创意设计
  • 高明做网站网站维护服务内容
  • react.js做的网站越秀做网站
  • 高端网站制作建设网站修改解析怎么做
  • 黄埔网站推广为什么网页总是打不开
  • 公司网站建设要多少钱漫画做视频在线观看网站
  • 卢龙建设银行官网网站红色大气企业网站
  • 支付公司网站建设会计分录个人网站建设
  • django 电商网站开发vi设计可以做哪方面的
  • 营销型网站改版设计网页
  • 盘锦做网站的公司网站开发客户需求
  • 网站关键词排名优化做一个属于自己的网页
  • 网站建设设计技术方案模板下载pc端自定义页设计与制作模板
  • 泰安肥城网站建设access 网站开发
  • 开县做网站信息流广告哪个平台好
  • 淘宝的网站怎么做的好处四川建设人才考试官网
  • 好的结构设计网站济南企业制作网站
  • 门户网站建设周期外贸公司名字大全
  • 电子工程网站有哪些专业团队高端网站制作
  • 获取网站后台地址阿里巴巴网站分类导航做全屏
  • 建设部网站造价咨询小程序源码是什么意思
  • 品牌网站建设h5烟台网站推广
  • 建设一个网站需要多长时间做国内网站多少钱