博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Leetcode刷题篇】leetcode108 将有序数组转换为二叉搜索树
阅读量:1887 次
发布时间:2019-04-26

本文共 684 字,大约阅读时间需要 2 分钟。

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

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

在这里插入图片描述

题解:对其用遍历的形式,来生成二叉树。

package com.lcz.leetcode;/** * 将有序数组转换为二叉搜索树 * @author LvChaoZhang * */public class Leetcode108 {
class TreeNode{
int val; TreeNode left; TreeNode right; TreeNode(int x){
val = x; } } public TreeNode sortedArrayToBST(int[] nums) {
return dfs(nums,0,nums.length-1); } private TreeNode dfs(int[] nums,int left,int right) {
// 截止条件 if(left>right) {
return null; } // 构建根节点 int mid = left+(right-left)/2; TreeNode root = new TreeNode(nums[mid]); // 递归构建 root.left = dfs(nums,left,mid-1); root.right = dfs(nums,mid+1,right); return root; }}

转载地址:http://swwdf.baihongyu.com/

你可能感兴趣的文章
2021-05-19
查看>>
2021-05-19
查看>>
2021-05-19
查看>>
todolist
查看>>
2021-05-22
查看>>
react 购物车
查看>>
react 路由
查看>>
2021-06-07
查看>>
面试-项目
查看>>
Mysql主从复制的配置(双机互为主从)
查看>>
java io输入输出流详解
查看>>
log4j在java中实现
查看>>
android studio 优先源码编译解决隐藏文件报红问题
查看>>
Android studio 两种方式将项目生成为jar包
查看>>
系统签名方式二 将as生成的jks 注入系统签名 变成带有系统签名的jks
查看>>
AMS 的启动过程 面试 笔记
查看>>
AMS 重要数据结构 面试 笔记
查看>>
Activity栈管理 面试 笔记
查看>>
window、windowManager 和 WMS 的关系面试 笔记
查看>>
Window 的属性面试 笔记
查看>>