剣はオファーを指します—55。二分木の深さ—分析とコード(Java)

剣は申し出を指します-55。二分木の深さ-分析とコード[Java]

1.タイトル

二分木を入力し、木の深さを見つけます。ルートノードからリーフノードに通過するノード(ルートノードとリーフノードを含む)は、ツリーのパスを形成し、最長のパスの長さがツリーの深さです。

2、分析とコード

1.再帰

(1)考える

質問から:
現在のノードをルートノードとする二分木の深さ= max(左のサブツリーの深さ、右のサブツリーの深さ)+ 1;
上記のアイデアに基づいて、再帰的な方法を組み合わせることで解決できます。

(2)コード

public class Solution {
    
    
    public int TreeDepth(TreeNode root) {
    
    
        if (root == null)
            return 0;
        return Math.max(TreeDepth(root.left), TreeDepth(root.right)) + 1;
    }
}

(3)結果

実行時間:16ms、占有メモリ:9288k。

3、その他

何もありません。

おすすめ

転載: blog.csdn.net/zml66666/article/details/111082657