牛客NC16 对称的二叉树

题目:简单题

给定一颗二叉树,判断是否是自身镜像。

示例:略

思路:
此题与LeetCode101是相同的题,也与LeetCode100思路相同。我们可以定义一个方法,传入两个参数当做两棵树,还是首先判断两棵树是否为空,为空则返回true,再判断是否存在一棵树为空,另一颗不为空,则是false。最后判断两个树的节点值是否相同。

public class Solution {
    
    
    boolean  isSymmetrical(TreeNode root) {
    
    
        return check(root, root);
    }

    boolean check(TreeNode p, TreeNode q) {
    
    
        if (p == null && q == null) {
    
    
            return true;
        }else if (p == null || q == null) {
    
    
            return false;
        }else{
    
    
            return p.val == q.val && check(p.left, q.right) && check(p.right, q.left);
        }
       
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43744992/article/details/121605147