
package mainimport "fmt"type TreeNode struct { Val int Left *TreeNode Right *TreeNode }func sortedArrayToBST(nums []int) *TreeNode { if len(nums)==0{ return nil } mid := len(nums)/2 root := &TreeNode{Val:nums[mid]} root.Left = sortedArrayToBST(nums[:mid]) root.Right = sortedArrayToBST(nums[mid+1:]) return root}func printTreeNode(h *TreeNode){ if h==nil{ return } printTreeNode(h.Left) fmt.Println(h.Val) printTreeNode(h.Right)}func main() { r := sortedArrayToBST([]int{-10,-3,0,5,9}) printTreeNode(r)}
