码迷,mamicode.com
首页 > 其他好文 > 详细

每日一题力扣530 二叉搜索树的最小绝对查

时间:2021-04-15 12:22:03      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:每日一题   绝对值   col   bsp   code   最小值   turn   lse   mdi   

 

给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。

 

class Solution:
    def getMinimumDifference(self, root: TreeNode) -> int:
        #初始化,最小值赋值为无穷大,last_value记录上一个节点的值
        min_value, last_value = float("inf"), -1
        def pengding_num(val):
            nonlocal min_value, last_value
            #第一个节点赋值给last_value
            if last_value == -1:
                last_value = val
            else:
                #每一次都用当前值减去上一时刻的值,取最小值,然后把当前值变成上一时刻的值
                min_value = min(min_value, abs(val - last_value))
                last_value = val
        #中序遍历
        def mid_order(root):
            nonlocal min_value, last_value
            if root:
                mid_order(root.left)#中序遍历,
                #处理当前节点
                pengding_num(root.val)
                mid_order(root.right)
        mid_order(root)
        return min_value

 

每日一题力扣530 二叉搜索树的最小绝对查

标签:每日一题   绝对值   col   bsp   code   最小值   turn   lse   mdi   

原文地址:https://www.cnblogs.com/liuxiangyan/p/14659537.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!