力扣HOT100 - 108. 将有序数组转换为二叉搜索树

解题思路:

二叉搜索树一般使用中序遍历

java 复制代码
class Solution {
    public TreeNode sortedArrayToBST(int[] nums) {
        return helper(nums,0,nums.length-1);
    }
    public TreeNode helper(int[] nums,int left,int right){
        if(left>right) return null;

        //确定根节点
        //总是选择中间位置左边的数字作为根节点
        //也可以用 int mid = (left + right + 1) / 2; 总是选择中间位置右边的数字作为根节点
        int mid=(left+right)/2;
        TreeNode root=new TreeNode(nums[mid]);

        root.left=helper(nums,left,mid-1);
        root.right=helper(nums,mid+1,right);
        return root;
    }
}
相关推荐
Cosmoshhhyyy44 分钟前
《Effective Java》解读第39条:注解优先于命名模式
java·开发语言
亓才孓1 小时前
[SpringIOC]NoSuchBeanDefinitionException
java·spring
追随者永远是胜利者1 小时前
(LeetCode-Hot100)20. 有效的括号
java·算法·leetcode·职场和发展·go
瓦特what?2 小时前
快 速 排 序
数据结构·算法·排序算法
前路不黑暗@2 小时前
Java项目:Java脚手架项目的文件服务(八)
java·开发语言·spring boot·学习·spring cloud·docker·maven
niuniudengdeng2 小时前
基于时序上下文编码的端到端无文本依赖语音分词模型
人工智能·数学·算法·概率论
hetao17338372 小时前
2026-02-13~16 hetao1733837 的刷题记录
c++·算法
毅炼2 小时前
Java 集合常见问题总结(3)
java·开发语言·后端
百锦再3 小时前
Java多线程编程全面解析:从原理到实战
java·开发语言·python·spring·kafka·tomcat·maven
Cosmoshhhyyy3 小时前
《Effective Java》解读第38条:用接口模拟可扩展的枚举
java·开发语言