0
点赞
收藏
分享

微信扫一扫

101. 对称二叉树(简单)

古得曼_63b6 2022-05-01 阅读 60

题目描述:
给你一个二叉树的根节点 root , 检查它是否轴对称。
例:
在这里插入图片描述
思路:
采用递归的方法。知道叶子节点,如果在叶子节点之前数值不对,直接返回false。
前提,对于root == null 的,是 true。
代码:

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public boolean isSymmetric(TreeNode root) {
        return symmetric(root,root);
    }
    public boolean symmetric(TreeNode p,TreeNode q){
        if(p==null && q==null){
            return true;
        }
        if(p==null||q==null){
            return false;
        }
        return p.val==q.val && symmetric(p.left,q.right) && symmetric(p.right,q.left);
    }
}

执行结果:
在这里插入图片描述

举报

相关推荐

0 条评论