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

2023-12-14 16:35:19

在这里插入图片描述

public class TreeNode {
    int val;
    TreeNode left;
    TreeNode right;

    public TreeNode() {
    }

    public TreeNode(int val) {
        this.val = val;
    }

    public TreeNode(int val, TreeNode left, TreeNode right) {
        this.val = val;
        this.left = left;
        this.right = right;
    }
}

public class Problem_108_SortedArrarToBST {
    public TreeNode sortedArrayToBST(int [] nums){

        return buildBST(nums,0,nums.length - 1);
    }
    public TreeNode buildBST(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 = buildBST(nums,left,mid - 1);
        root.right = buildBST(nums,mid + 1,right);
        return root;
    }
}

文章来源:https://blog.csdn.net/qq_37247026/article/details/134998138
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。