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;
    }
}
相关推荐
哭哭啼16 小时前
pgSql 事务篇
java·数据库·postgresql
退休倒计时16 小时前
【每日一题】LeetCode 15. 三数之和 TypeScript
数据结构·算法·leetcode·typescript
林爷万福16 小时前
MATLAB光谱数据分析从入门到项目实战
算法·光纤光谱仪
架构源启16 小时前
Spring AI进阶系列(17)- 未来展望与职业发展:Java 工程师迈向 AI 工程化与智能体架构的路线图
java·人工智能·spring
我登哥MVP16 小时前
Spring Boot 从“会用”到“精通”:SpringBoot MVC 请求处理全流程
java·spring boot·后端·spring·mvc·maven·intellij-idea
吴可可12316 小时前
AutoCAD2016二次开发环境配置指南
算法·机器学习
一条大祥脚16 小时前
ABC461 枚举|扫描线|动态前缀和|数论|dfs枚举子集
算法·深度优先
计算机安禾16 小时前
【数据库系统原理】第14篇:关系模式的语义约束:函数依赖的公理系统与闭包计算
人工智能·算法·机器学习
我登哥MVP16 小时前
Spring Boot 从“会用”到“精通”:ReturnValueHandler原理
java·spring boot·后端·spring·java-ee·maven·intellij-idea
量化君也16 小时前
快速入门量化交易都要学些什么?
大数据·人工智能·python·算法·金融