Skip to content

对称二叉树 #18

@YalongYan

Description

@YalongYan

题目地址: 对称二叉树

思路

1.整个树是否为镜像, 转化为,左右子树 l r是否为镜像
2.判断l r 为镜像的条件,就是 l r 都存在,同时 l.left = r.right && l.right = r.left
3. 递归遍历,递归的结束条件是 左右子树都不存在 !l && !r

代码

var isSymmetric = function(root) {
    if (!root) return true
    let isSame = (l, r) => {
        if (!l && !r) return true
        if (l && r && (l.val === r.val) && isSame(l.left, r.right) && isSame(l.right, r.left)) {
            return true
        }
        return false
    }
    return isSame(root.left, root.right)
};

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions