Open yankewei opened 3 years ago
因为是一个二叉搜索树,可以直接中序遍历获取排序后的结果
func minDiffInBST(root *TreeNode) int {
var slice []int
var dfs func(root *TreeNode)
dfs = func (root *TreeNode) {
if root == nil {
return
}
dfs(root.Left)
slice = append(slice, root.Val)
dfs(root.Right)
}
dfs(root)
ret := math.MaxInt64
for i := 0; i < len(slice)-1; i++ {
if slice[i+1] - slice[i] < ret {
ret = slice[i+1] - slice[i]
}
}
return ret
}
给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。
注意:本题与 530:https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/ 相同
示例 1:
示例 2:
提示:
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。