mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 16:54:50 +08:00
添加 0108.将有序数组转换为二叉搜索树 Golang版本
添加 0108.将有序数组转换为二叉搜索树 Golang版本
This commit is contained in:
@ -258,6 +258,29 @@ class Solution:
|
|||||||
Go:
|
Go:
|
||||||
|
|
||||||
|
|
||||||
|
> 递归(隐含回溯)
|
||||||
|
|
||||||
|
```go
|
||||||
|
/**
|
||||||
|
* Definition for a binary tree node.
|
||||||
|
* type TreeNode struct {
|
||||||
|
* Val int
|
||||||
|
* Left *TreeNode
|
||||||
|
* Right *TreeNode
|
||||||
|
* }
|
||||||
|
*/
|
||||||
|
//递归(隐含回溯)
|
||||||
|
func sortedArrayToBST(nums []int) *TreeNode {
|
||||||
|
if len(nums)==0{return nil}//终止条件,最后数组为空则可以返回
|
||||||
|
root:=&TreeNode{nums[len(nums)/2],nil,nil}//按照BSL的特点,从中间构造节点
|
||||||
|
root.Left=sortedArrayToBST(nums[:len(nums)/2])//数组的左边为左子树
|
||||||
|
root.Right=sortedArrayToBST(nums[len(nums)/2+1:])//数字的右边为右子树
|
||||||
|
return root
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
Reference in New Issue
Block a user