news 2026/6/23 20:37:35

力扣654 最大二叉树 java实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣654 最大二叉树 java实现

654. 最大二叉树

给定一个不重复的整数数组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]

提示:

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

根据题目描述,我们很容易会想到通过递归的方式对本题进行解答。因为无论是拆分出来左子数组还是右子数组,那么对于子数组的操作,依然都是一样的逻辑。算是分冶的思想。因此使用递归就比较简单。只需要构建当前最大值即可,然后将左右侧的数组继续递归。

以下为java实现代码。

public static void main(String[] args) { int[] nums = {3,2,1,6,0,5}; System.out.println(constructMaximumBinaryTree(nums)); } public static TreeNode constructMaximumBinaryTree(int[] nums){ if (nums.length == 0){ return null; } int max = 0; for (int i = 0; i < nums.length; i++) { if (nums[i] > nums[max]){ max = i; } } TreeNode res = new TreeNode(nums[max]); int[] left = Arrays.copyOfRange(nums, 0, max); int[] right = Arrays.copyOfRange(nums, max + 1, nums.length); res.left = constructMaximumBinaryTree(left); res.right = constructMaximumBinaryTree(right); return res; }

以上为记录分享用,代码较差请见谅。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 19:27:46

语音识别技术在教育场景的应用实践与工具选型探索

语音识别技术在教育领域的应用日益广泛&#xff0c;特别是在教师专业发展场景中发挥着重要作用。本文将从技术实现角度分析语音转文字工具的核心功能&#xff0c;并通过实际案例演示如何选择适合教育工作的工具方案。技术原理与教育场景适配性分析 现代语音识别系统通常基于深度…

作者头像 李华
网站建设 2026/6/23 3:29:17

三步搞定verl:RLHF训练环境快速部署手册

&#x1f680; 欢迎来到verl框架的RLHF训练环境搭建指南&#xff01;作为字节跳动Seed团队开源的大语言模型强化学习工具&#xff0c;verl支持多种RL算法和训练后端&#xff0c;让我们一起来探索如何快速部署这个强大的训练环境。 【免费下载链接】verl verl: Volcano Engine R…

作者头像 李华
网站建设 2026/6/23 19:33:45

好写作AI:当枯燥的统计表格,遇上会讲故事的AI“翻译官”

面对SPSS导出的回归分析表&#xff0c;你知道p值<0.05很显著&#xff0c;R方也不错&#xff0c;可到了论文的“结果与讨论”部分&#xff0c;却发现自己像个“学术哑巴”——除了重复表格里的数字&#xff0c;竟不知该如何组织一段有逻辑的专业论述。对于依赖数据分析的研究…

作者头像 李华
网站建设 2026/6/23 9:31:05

重磅︱数字孪生风洞「风神NF3」发布!

以下文章仅为学术分享&#xff0c;如有侵权&#xff0c;请联系删除 公众号原文链接&#xff1a; https://mp.weixin.qq.com/s/-rSUrT5-lpPRmV3ad0fKgw SIMFORGE™ NEWS 2025年11月29日&#xff0c;第四届智能流体力学产业联合体大会于深圳隆重召开。 会上&#xff0c;在中航工…

作者头像 李华
网站建设 2026/6/23 16:30:10

审计场景中录音转文字工具的技术实现与选型指南

在审计工作中&#xff0c;现场访谈录音的高效处理是提升生产力的关键环节。审计人员常常需要从长时间的对话中提取结构化信息&#xff0c;传统手工转写不仅效率低下&#xff0c;还容易产生信息遗漏。本文将从技术实现角度分析录音转文字工具的核心能力&#xff0c;并提供多个主…

作者头像 李华