专栏首页CtrlCV博客【剑指Offer】对称的二叉树

【剑指Offer】对称的二叉树

题目

请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。

例如,二叉树 [1,2,2,3,4,4,3] 是对称的。

    1
   / \
  2   2
 / \ / \
3  4 4  3

但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:

    1
   / \
  2   2
   \   \
   3    3

示例 1:

输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2:

输入:root = [1,2,2,null,3,null,3] 输出:false

限制:

0 <= 节点个数 <= 1000

题解

class Solution {
    public boolean isSymmetric(TreeNode root) {
        return root == null ? true : recur(root.left, root.right);
    }
    boolean recur(TreeNode L, TreeNode R) {
        if(L == null && R == null) return true;
        if(L == null || R == null || L.val != R.val) return false;
        return recur(L.left, R.right) && recur(L.right, R.left);
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【剑指Offer】二叉树的镜像

    输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1]

    小新哟
  • 【剑指Offer】二叉树中和为某一值的路径

    输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。

    小新哟
  • 【剑指Offer】链表中倒数第 k 个节点

    输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们...

    小新哟
  • 搞它!!!Linux构建远程YUM仓库与NFS共享存储服务

    FTP服务:ftp://… HTTP服务: http://… 本地目录:file://…

    不吃小白菜
  • 分发系统——expect 原

    (adsbygoogle = window.adsbygoogle || []).push({});

    阿dai学长
  • 重定向、别名、绝对路径、相对路径 详解

    第1章 Linux命令基础 1.1 习惯 操作前备份,操作后检查 1.2 简单目录结构 一切从根开始,与windows不同 1.3 规则 [root@znix ...

    惨绿少年
  • 二叉树遍历的非递归实现

    #include<stdio.h> #include<stack> #include<stdlib.h> using namespace std; struc...

    用户1624346
  • context.write

    http://www.xlucas.com/a/hadoopfenxiang/MapReduce/2016/1017/241.html

    平凡的学生族
  • Thrift or gRPC ?Alluxio RPC框架的深度实践总结

    作为Alluxio 2.0发布版本的一部分,我们将RPC框架从Apache Thrift(见文末链接1)变为gRPC(见文末链接2)。在本文中,我们将讨论这一变...

    Spark学习技巧
  • Centos7的Firewalld防火墙基础命令详解

    Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实时过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)。Linux系统的防火墙体系基于内核共...

    砸漏

扫码关注云+社区

领取腾讯云代金券