ACWING71。深さのバイナリツリー(安全プランを証明するために)

入力バイナリツリーのルート、ツリー要求の深さ。

ルートノードからリーフノードまでの経路ツリーを形成し、順次、ツリー内の最長パスの長さの深さ(ルート、リーフノードを含む)を通過します。

サンプル
入力:バイナリツリー[8、12、2、NULL 、NULL、6,4、NULL、NULL、NULL、NULL] としては、以下:
8
/
122
/
64

出力:3

class Solution {
public:
    int treeDepth(TreeNode* root) {
        if(!root) return 0;
        int ans = dfs(root,1);
        return ans;
    }
    int dfs(TreeNode *root,int dep) {
        int ans = dep;
        if(root -> left) ans = max(ans,dfs(root -> left,dep + 1));
        if(root -> right) ans = max(ans,dfs(root -> right,dep + 1));
        return ans;
    }
};
公開された844元の記事 ウォン称賛28 ビュー40000 +

おすすめ

転載: blog.csdn.net/tomjobs/article/details/104960647