Typescript-Algorithms
    Preparing search index...

    Variable maximum_depth_of_binary_treeConst

    maximum_depth_of_binary_tree: (root: null | TreeNode) => number = maxDepth

    104.二叉树的最大深度

    给定一个二叉树,找出其最大深度。

    二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。


    示例1

    输入: root = [3,9,20,null,null,15,7]
    输出: 3


    输入: root = [1,null,2]
    输出: 2


    • 树中节点的数量在 [0, 10^4] 区间内
    • -100 <= Node.val <= 100

    Type declaration

      • (root: null | TreeNode): number
      • Definition for a binary tree node. class TreeNode { val: number left: TreeNode | null right: TreeNode | null constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) { this.val = (val===undefined ? 0 : val) this.left = (left===undefined ? null : left) this.right = (right===undefined ? null : right) } }

        Parameters

        • root: null | TreeNode

        Returns number

    二叉树的深度就是所有的根节点到叶子节点的节点数的最大值。

    /**
    * Definition for a binary tree node.
    * class TreeNode {
    * val: number
    * left: TreeNode | null
    * right: TreeNode | null
    * constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) {
    * this.val = (val===undefined ? 0 : val)
    * this.left = (left===undefined ? null : left)
    * this.right = (right===undefined ? null : right)
    * }
    * }
    */

    function maxDepth(root: TreeNode | null): number {
    function dfs(node: TreeNode | null): number {
    if (!node) {
    return 0;
    }

    return 1 + Math.max(dfs(node.left), dfs(node.right));
    }

    return dfs(root);
    };