leetcode 513. 找树左下角的值

87 阅读1分钟

c++

class Solution {
public:
    int max_k = -1, ans;
    void dfs(TreeNode *root, int k) {
        if (!root) return ;
        if (k > max_k) {
            ans = root->val;
            max_k = k;
        } 
        dfs(root->left, k  +1);
        dfs(root->right, k + 1);
        return ;
    }
    int findBottomLeftValue(TreeNode* root) {
        dfs(root, 0);
        return ans;
    }
};

js

var findBottomLeftValue = function(root) {
    var max_k = -1, ans = 0;
    function dfs(root, k) {
        if (!root) return ;
        if (k > max_k) {
            max_k = k;
            ans = root.val;
        }
        dfs(root.left, k + 1);
        dfs(root.right, k + 1);
        return ;
    }
    dfs(root, 0);
    return ans;
};