104. 二叉树的最大深度

var maxDepth = function(root) {
    if(!root) return 0
    return Math.max(maxDepth(root.left), maxDepth(root.right)) + 1
};

100. 相同的树

var isSameTree = function(p, q) {
    if(!p && !q) return true
    if(p?.val === q?.val && isSameTree(p.left, q.left) && isSameTree(p.right, q.right)) {
        return true
    }
    return false
};

226. 翻转二叉树

var invertTree = function(root) {
    if(!root) return root
    return {
        val: root.val,
        left: invertTree(root.right),
        right: invertTree(root.left)
    }
};

101. 对称二叉树

var isSymmetric = function(root) {
    if(!root) return false
    const isMirror = (left, right) => {
        if(!right && !left) return true
        if(right?.val === left?.val && isMirror(left.left, right.right) && isMirror(left.right, right.left)) {
            return true
        }
        return false
    }
 
    return isMirror(root.left, root.right)
};

相关笔记