本文共 1152 字,大约阅读时间需要 3 分钟。
BFS
# Definition for a binary tree node.class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None class Solution: def minDepth(self, root: TreeNode) -> int: if not root: return 0 q = [] q.append(root) ans = 1 while q: tmp = [] for i in q: if i.left: tmp.append(i.left) if i.right: tmp.append(i.right) if not i.left and not i.right: return ans ans +=1 q = tmp return ans
递归
# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def minDepth(self, root: TreeNode) -> int: if not root: return 0 l = self.minDepth(root.left) + 1 r = self.minDepth(root.right) + 1 if root.left and root.right: return min(l, r) elif root.left: return l else: return r
转载地址:http://sbrgn.baihongyu.com/