swift -计算树的最大深度
程序员文章站
2022-05-06 22:45:11
...
问题描述
给出一个二叉树,找到树的最大深度
例子:给定二叉树 [3, 9, 20, nil, nil, 15, 7] 结果是3
代码
//计算树的最大深度
func p_maxDepth(root: TreeNode?) -> Int {
guard let root = root else {
return 0
}
return max(p_maxDepth(root: root.left), p_maxDepth(root: root.right)) + 1
}
测试
@objc func maxDepth()
{
//给定二叉树 [3, 9, 20, nil, nil, 15, 7] 深度是3
let root = TreeNode.init(val: 3)
root.left = TreeNode.init(val: 9)
root.right = TreeNode.init(val: 20)
let second = root.right
second?.left = TreeNode.init(val: 10)
second?.right = TreeNode.init(val: 7)
let result = self.p_maxDepth(root: root)
print("二叉树的深度\(result)")
}
结果
上一篇: 给定值,寻找二叉树中满足的所有路径