LeetCode:101、对称二叉树

递归法:

java 复制代码
/**
 * 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) {
        if(root==null)return true;
        return compare(root.left,root.right);
    }
    public boolean compare(TreeNode left,TreeNode right){
        if(left==null&&right!=null)return false;//左空右不空,非对称
        else if(left!=null&&right==null)return false;//右空左不空,非对称
        else if(left==null&&right==null)return true;//左空右空,对称
        else if(left.val!=right.val)return false;//左值≠右值,非对称
        
        boolean outside=compare(left.left,right.right);
        boolean inside=compare(left.right,right.left);
        boolean isSame=outside&&inside;
        return isSame;
    }
}
相关推荐
juleskk几秒前
3.22 复试训练
算法
还不秃顶的计科生2 分钟前
力扣第84题:完全平方数
算法·leetcode·职场和发展
2301_776508726 分钟前
分布式系统监控工具
开发语言·c++·算法
暮冬-  Gentle°8 分钟前
C++与区块链智能合约
开发语言·c++·算法
愣头不青9 分钟前
78.子集
数据结构·算法
Oueii9 分钟前
C++中的代理模式实现
开发语言·c++·算法
3DVisionary13 分钟前
从微观损伤到宏观断裂:DIC非接触测量在复合材料可靠性验证中的前沿实践
人工智能·数码相机·算法·机器学习·3d·复合材料·dic技术
sheeta199815 分钟前
LeetCode 每日一题笔记 日期:2025.03.22 题目:1886.判断矩阵经轮转后是否一致
笔记·leetcode·矩阵
sonnet-102919 分钟前
拓扑排序的实现
java·c语言·开发语言·笔记·算法
米粒120 分钟前
力扣算法刷题 Day 20
算法·leetcode·职场和发展