108. 将有序数组转换为二叉搜索树

将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。

本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。

示例:

给定有序数组: [-10,-3,0,5,9],

一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树:

      0/ \-3   9/   /-10  5

class Solution {public TreeNode sortedArrayToBST(int[] nums) {// 左右等分建立左右子树,中间节点作为子树根节点,递归该过程return nums == null ? null : buildTree(nums, 0, nums.length - 1);}private TreeNode buildTree(int[] nums, int l, int r) {if (l > r) {return null;}int m = l + (r - l) / 2;TreeNode root = new TreeNode(nums[m]);root.left = buildTree(nums, l, m - 1);root.right = buildTree(nums, m + 1, r);return root;}
}

Java实现 LeetCode 108 将有序数组转换为二叉搜索树相关推荐

  1. leetcode刷题记录--数据结构;深度优先搜索算法;二叉树;平衡树;1020. 飞地的数量;1669. 合并两个链表;108. 将有序数组转换为二叉搜索树

    1020. 飞地的数量 难度中等131 给你一个大小为 m x n 的二进制矩阵 grid ,其中 0 表示一个海洋单元格.1 表示一个陆地单元格. 一次 移动 是指从一个陆地单元格走到另一个相邻(上 ...

  2. 将字符串转换为数组_LeetCode 树 108.将有序数组转换为二叉搜索树

    7(108) 将有序数组转换为二叉搜索树 描述 将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 ...

  3. Suzy找到实习了吗 Day23 | 二叉树最后一节!669. 修剪二叉搜索树,108. 将有序数组转换为二叉搜索树,538. 把二叉搜索树转换为累加树

    669. 修剪二叉搜索树 题目 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high.通过修剪二叉搜索树,使得所有节点的值在[low, high]中.修剪树 不应该 改变保 ...

  4. 108.将有序数组转换为二叉搜索树

    将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1. 示例: 给定有序数组: [-10,-3,0, ...

  5. 108. 将有序数组转换为二叉搜索树(二分+搜索)

    将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1. 二分+搜索. /*** Definition ...

  6. leetcode 108. Convert Sorted Array to Binary Search Tree | 108. 将有序数组转换为二叉搜索树(Java)

    题目 https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/ 题解 经典二分,不解释了,直接看代码 /*** ...

  7. 【leetcode】108. 将有序数组转换为二叉搜索树

  8. [leetcode-108,109] 将有序数组转换为二叉搜索树

    109. 有序链表转换二叉搜索树 Given a singly linked list where elements are sorted in ascending order, convert it ...

  9. 数据结构与算法--力扣108题将有序数组转换为二叉搜索树

    力扣108提将有序数组转换为二叉搜索树 近一年都比较关注算法相关的知识,也刷了不少题,之前的文章中大多也是算法相关的文章,但是感觉每次遇到树相关的题型都不能应对自如,因此还是有必要在相关知识上下功夫, ...

  10. laravel数组转换为字符串_LeetCode刷题实战108:将有序数组转换为二叉搜索树

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

最新文章

  1. 最近学习的 Node.js 之 http
  2. TCP/IP总结(4)TCP 之最大消息长度
  3. ITK:Watch注册Registration
  4. client netty 主动发数据_Netty服务器无限循环给客户端发送数据
  5. 如何修改select默认option数量多余显示滚动条查看_Chameleon for Mac(mac界面颜色修改工具)...
  6. 机器人学中的状态估计 中文版_《机器人学中的状态估计》-05偏差,匹配和外点...
  7. 一款超好用的PDF阅读器:智器阅读
  8. js头像裁剪实现——canvas+Jcrop+jQuery
  9. windows无法连接到打印机,打印处理器不存在
  10. win10配置ffmpeg环境
  11. 转《七年之前和七年之后》-祭奠高考
  12. 欢迎百度成为开源社年度白金伙伴
  13. 图片去除下间隙(图片3像素)的方法
  14. iOS 拓展,icon,尺寸 开发系列 吕文翰
  15. 串口打开失败!请检查指定串口是否存在或者已被打开
  16. 制作的自媒体短视频很模糊?教你3个方法,让视频变清晰
  17. 深入浅出WMS之入库流程解析
  18. 上海2021年高考成绩排位查询,2021年上海高考分数一分一段位次表,上海高考个人成绩排名查询方法...
  19. Optimizing the Latent Space of Generative Networks
  20. 巨头押注医疗 | 论XR与医疗的不解之缘

热门文章

  1. 《Python编程:从入门到实践》---项目2
  2. php 跨站脚本攻击漏洞,PHP跨站脚本攻击(XSS)漏洞修复思路(二)
  3. 淘宝客小程序制作(1)-淘宝的相关的准备
  4. Mybatis与springboot项目启动时出现Field mapper in ‘xxx‘ required a bean of type ‘xxx‘ that could not be found
  5. Pale Moon 15.1 发布,苍月浏览器
  6. 关于Palantir ——第六部分 – 图分析应用
  7. 微软技术探究之FASTER
  8. MongoDB修改器使用
  9. node.js-医院预约挂号系统的设计与实现毕业设计源码141041
  10. 高仿腾讯QQ即时通讯IM项目