42、二叉树-将有序数组转换为二叉搜索树

思路

什么是二叉搜索树:对于每个节点来说,我的左节点小于我,我的有节点大于等于我

什么是平衡二叉搜索树:对于每个节点来说我左子树深度和我的右子树深度差值不能大于1

既然数组已经有序,所以我们可以直接从中位数开始建立当前节点,那么左边就是我的左子树,右边就是我的右子树,依次递归。代码如下:

class Solution {public TreeNode sortedArrayToBST(int[] nums) {if (nums==null||nums.length==0){return null;}return process(nums,0,nums.length-1);}private TreeNode process(int[] nums, int start, int end) {if (start>end){return null;}int mid=(start+end)/2;TreeNode node = new TreeNode(nums[mid]);node.left=process(nums,start,mid-1);node.right=process(nums,mid+1,end);return node;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/630922.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++ 静态成员函数(二)

一、访问静态成员变量 静态成员函数可以通过作用域运算符::来访问类的静态成员变量和静态成员函数 静态成员函数不属于任何特定的对象,而是属于整个类,可以通过类名直接调用,无需创建类的实例。静态成员函数不能访问类的非静态成员变量和非…

软考134-上午题-【软件工程】-进度管理

一、甘特图(了解) 1-1、定义 Gantt图是一种简单的水平条形图,它以日历为基准描述项目任务。 水平轴表示日历时间线(如时、天、周、月和年等),每个条形表示一个任务,任务名称垂直地列在左边的列中,图中水…

2024华中杯B题完整思路代码论文解析

2024华中杯B题思路论文汇总 https://www.yuque.com/u42168770/qv6z0d/xpkf6ax8udqq9lt2?singleDoc# 本文针对电子地图服务商利用车辆轨迹数据估计城市路口信号灯周期的问题,提出了一系列数学模型和算法。通过分析车辆行驶轨迹与信号灯的关联性,在不同的约束条件下,实现了对路…

【赛题】2024年“华中杯”数模竞赛赛题发布

2024年"华中杯"数学建模网络挑战赛——正式开赛!!! 赛题已发布,后续无偿分享各题的解题思路、参考文献,帮助大家最快时间,选择最适合是自己的赛题。祝大家都能取得一个好成绩,加油&a…

Vue项目实现懒加载——自用笔记

熟悉指令语法&#xff1a; <template><HomePanel title"人气推荐" sub-title"人气爆款 不容错过"><ul class"goods-list"><li v-for"item in hotList" :key"item.id"><RouterLink to"/&qu…

【TDSQL】TCPMSS最大数据分段大小值不合理导致JAVA程序连接数据库异常案例

欢迎关注“数据库运维之道”公众号&#xff0c;一起学习数据库技术! TDSQL核心架构原理解析下载链接&#xff1a;百度网盘 请输入提取码 提取码&#xff1a;vat5 DTC2024 数据技术嘉年华&#xff08;演讲资料下载&#xff09;DTC2024 数据技术嘉年华&#xff08;演讲资料下载…

车联网大数据与人工智能一体化:开启智慧出行新时代

随着物联网技术的快速发展&#xff0c;车联网已经成为了汽车行业的重要趋势之一。而在车联网的发展过程中&#xff0c;大数据和人工智能的应用也日益成为关键因素。本文将探讨如何将大数据与人工智能一体化应用于车联网&#xff0c;以实现智慧出行的目标。 尤其是近来国内的华为…

【C语言】冒泡排序算法详解

目录 一、算法原理二、算法分析时间复杂度空间复杂度稳定性 三、C语言实现四、Python实现 冒泡排序&#xff08;Bubble Sort&#xff09;是一种基础的排序算法。它重复地遍历要排序的数列&#xff0c;一次比较两个元素&#xff0c;如果他们的顺序错误就把他们交换过来。遍历数列…

电视音频中应用的音频放大器

电视机声音的产生原理是将电视信号转化为声音&#xff0c;然后通过扬声器将声音播放出来。当我们打开电视并选择频道时&#xff0c;电视机首先从天线或有线电视信号中获取声音信号。声音信号经过放大器放大之后&#xff0c;就能够通过扬声器发出声音。电视机声音的产生原理和音…

[MySQL数据库] 索引与事务

1. 索引 1.1 概念 索引是一种特殊的文件&#xff0c;包含着对数据表里所有记录的引用指针.可以对表中的一列或多列创建索引,并指定索引的类型&#xff0c;各类索引有各自的数据结构实现. 1.2 作用 数据库中的表、数据、索引之间的关系&#xff0c;类似于书架上的图书、书籍…

Java垃圾回收3

分代回收 分代收集算法 回收机制 1.新创建的对象&#xff0c;都会先分配到eden区 2.当伊甸园内存不足&#xff0c;标记eden区与 from区&#xff08;现阶段没有&#xff09;的存活对象 将存活对象(假设这里只有A存活)采用复制算法复制到 to 中&#xff0c;复制完毕后&#xff0…

带小数点的String类型数据,如何只取整数?

一、场景引入 如果前端页面存在列表展示用户数据&#xff0c;但是用户数据存在非常多的小数位&#xff0c;从页面来看&#xff0c;数据太多就会不太美观&#xff0c;因此&#xff0c;出于场景美化考虑&#xff0c;在不影响业务功能的情况下&#xff0c;可以只展示整数内容&…