美文网首页
108. Convert Sorted Array to Bin

108. Convert Sorted Array to Bin

作者: sarto | 来源:发表于2022-05-26 09:44 被阅读0次

题目

给定一个递增整数数组 nums ,返回一个高度平衡的二叉搜索树

解析

高度平衡,保险起见,左右节点个数相同且均衡分配即可。二叉树问题还是递归问题,将数组分割成左右两个部分,然后递归求解即可。

伪代码

root = mid(nums)
root.left = f(nums[:half])
root.Right = f(nums[half+1:])

代码

func sortedArrayToBST(nums []int) *TreeNode {
    if len(nums) == 0 {
        return nil
    }
    k := len(nums)/2
    node := &TreeNode{Val: nums[k]}
    node.Left = sortedArrayToBST(nums[:k])
    node.Right = sortedArrayToBST(nums[k+1:])
    return node
}
image.png

相关文章

网友评论

      本文标题:108. Convert Sorted Array to Bin

      本文链接:https://www.haomeiwen.com/subject/koruprtx.html