LeetCode-101-对称二叉树

题目:

给你一个二叉树的根节点 root , 检查它是否轴对称。
思路·:利用两个队列,每个队列存储的是根节点的其中一棵子树的节点。之后进行逻辑判断就可以了。

复制代码
class Solution {
    public boolean isSymmetric(TreeNode root) {
        if(root == null){
            return true;
        }
        Queue<TreeNode> queue1 = new LinkedList<>();
        Queue<TreeNode> queue2 = new LinkedList<>();
        if(root.left == null){
            if(root.right != null){
                return false;
            }
        }else{
            if(root.right == null){
                return false;
            }
            if(root.left.val != root.right.val){
                return false;
            }
            queue1.add(root.left);
            queue2.add(root.right);
        }
        TreeNode node1 = null;
        TreeNode node2 = null;

        while(!queue1.isEmpty() && !queue2.isEmpty()){
            node1 = queue1.poll();
            node2 = queue2.poll();

            if(node1.left == null){
                if(node2.right != null){
                    return false;
                }
            }else{
                if(node2.right == null){
                    return false;
                }
                if(node1.left.val != node2.right.val){
                    return false;
                }
                queue1.add(node1.left);
                queue2.add(node2.right);
            }

            if(node1.right == null){
                if(node2.left != null){
                    return false;
                }
            }else{
                if(node2.left == null){
                    return false;
                }
                if(node1.right.val != node2.left.val){
                    return false;
                }
                queue1.add(node1.right);
                queue2.add(node2.left);
            }
        }
        if(!queue1.isEmpty()){
            return false;
        }
        if(!queue2.isEmpty()){
            return false;
        }
        return true;
    }
}
相关推荐
徐小夕1 小时前
pxcharts Ultra V2.3更新:多维表一键导出 PDF,渲染兼容性拉满!
vue.js·算法·github
开源之眼2 小时前
《github star 加星 Taimili.com 艾米莉 》为什么Java里面,Service 层不直接返回 Result 对象?
java·后端·github
CoovallyAIHub2 小时前
OpenClaw一脚踩碎传统CV?机器终于不再只是看世界
深度学习·算法·计算机视觉
CoovallyAIHub2 小时前
仅凭单目相机实现3D锥桶定位?UNet-RKNet破解自动驾驶锥桶检测难题
深度学习·算法·计算机视觉
zone77392 小时前
002:RAG 入门-LangChain 读取文本
后端·算法·面试
Maori3163 小时前
放弃 SDKMAN!在 Garuda Linux + Fish 环境下的优雅 Java 管理指南
java
得物技术3 小时前
得物社区搜推公式融合调参框架-加乘树3.0实战
算法
用户908324602733 小时前
Spring AI 1.1.2 + Neo4j:用知识图谱增强 RAG 检索(上篇:图谱构建)
java·spring boot
小王和八蛋3 小时前
DecimalFormat 与 BigDecimal
java·后端
beata4 小时前
Java基础-16:Java内置锁的四种状态及其转换机制详解-从无锁到重量级锁的进化与优化指南
java·后端