二叉树的最大深度 leetcode104

Posted 柠檬橘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树的最大深度 leetcode104相关的知识,希望对你有一定的参考价值。

题目描述

解题思路

  • 主要思路是从图中一个未访问的顶点 V 开始,沿着一条路一直走到底,然后从这条路尽头的节点回退到上一个节点,再从另一条路开始走到底...,不断递归重复此过程,直到所有的顶点都遍历完成,它的特点是不撞南墙不回头,先走完一条路,再换一条路继续走
    如果我们熟悉深度搜索优先算法的话,很容易想到用此方法来解这道题。
    我们从根节点开始向下遍历,如果遇到空节点,返回0;否则继续遍历左右节点,其最大深度为左右子树深度的最大值

代码实现

func maxDepth(root *TreeNode) int {
    if root == nil {
        return 0
    }
    lhight := maxDepth(root.Left)
    rhight := maxDepth(root.Right)
    return max(lhight, rhight) + 1
}

func max(x int, y int) int {
    if x > y {
        return x
    }else {
        return y
    }
}

以上是关于二叉树的最大深度 leetcode104的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode104. 二叉树的最大深度(dfs)

Leetcode题目104.二叉树的最大深度(DFS+BFS简单)

leetcode 104. 二叉树的最大深度

⭐算法入门⭐《二叉树》简单04 —— LeetCode 104. 二叉树的最大深度

leetcode104 二叉树的最大深度(Easy)

LeetCode-104-二叉树的最大深度