1448. Count Good Nodes in Binary Tree

https://leetcode.com/problems/count-good-nodes-in-binary-tree/

class Solution:
    def goodNodes(self, root: TreeNode) -> int:
        self.cnt = 0
        def dfs(node,m):
            if node == None:
                return
            if node.val >= m:
                self.cnt+=1 
            currMax = max(m,node.val)
            dfs(node.left,currMax)
            dfs(node.right,currMax)
        dfs(root,float("-inf"))
        return self.cnt
        

试试不用global

class Solution:
    def goodNodes(self, root: TreeNode) -> int:
        def dfs(node,m):
            if node == None:
                return 0
            res = 0
            if node.val >= m:
                res=1
            currMax = max(m,node.val)
            res += dfs(node.left,currMax)
            res += dfs(node.right,currMax)
            return res
        return dfs(root,float("-inf"))

一样的速度

Last updated

Was this helpful?