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

Leetcode 654:最大二叉树

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

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

返回 nums 构建的 最大二叉树 

 public static TreeNode constructMaximumBinaryTree(int[] nums) {TreeNode root=traversal(nums,0,nums.length);return root;}public static TreeNode traversal(int[] nums,int begin ,int end){if(end-begin<1){return null;}if(end-begin==1){return new TreeNode(nums[begin]);   //数组中只有一个节点}//1.先找到最大值和对应角标int max=nums[begin];int index=begin;for(int i=begin+1;i<end;i++){if(nums[i]>max){max=nums[i];index=i;}}TreeNode root=new TreeNode(max);  //创建根节点//划分左右子树root.left=traversal(nums,begin,index);   //构建左子树root.right=traversal(nums,index+1,end);   //构建右子树return root;}

相关文章:

  • LeetCode每日一题 | 2938.区分黑球与白球 | 数组逆序+计数器
  • kivy 百词斩项目 报错
  • 618网购节,电商能挡住恶意网络爬虫的攻击吗?
  • 【全开源】Java 农产品类型商城APP小程序公众号源码(APP+小程序+公众号+H5)
  • Android 动态修改APP图标
  • 【Linux】Apache服务器配置
  • 高德POI数据-2024年5月数据-成都餐饮服务
  • java版spring cloud 深入探究ERP管理系统源码:功能模块详解与操作流程梳理
  • Qt 的 d_ptr (d-pointer) 和 q_ptr (q-pointer)解析;Q_D和Q_Q指针
  • LabVIEW如何确保步进电机的长期稳定运行
  • 如何离线下载 Microsoft Corporation II Windows Subsystem for Android
  • 前端柯里化
  • 【前端面试高频手写题】
  • 个人博客系统测试报告
  • 用Transformer做多元时序预测的最佳方法?
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • PAT A1092
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • yii2权限控制rbac之rule详细讲解
  • Zepto.js源码学习之二
  • 程序员该如何有效的找工作?
  • 工作手记之html2canvas使用概述
  • 浏览器缓存机制分析
  • 如何在 Tornado 中实现 Middleware
  • 使用SAX解析XML
  • 数组的操作
  • 一个SAP顾问在美国的这些年
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • ​马来语翻译中文去哪比较好?
  • ###C语言程序设计-----C语言学习(3)#
  • (30)数组元素和与数字和的绝对差
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (简单) HDU 2612 Find a way,BFS。
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (译)计算距离、方位和更多经纬度之间的点
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .Net 6.0 处理跨域的方式
  • .net 按比例显示图片的缩略图
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .net 发送邮件
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .NET 某和OA办公系统全局绕过漏洞分析
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .Net实现SCrypt Hash加密
  • []使用 Tortoise SVN 创建 Externals 外部引用目录
  • []指针
  • [1]-基于图搜索的路径规划基础