专栏首页AI那点小事剑指offer——对称的二叉树

剑指offer——对称的二叉树

概述

题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。


思路

  1. root1与root2都为空,返回true;
  2. 否则,root1与root2其中一个为空,那么返回false;
  3. 否则,若root1与root2的根节点不相等,那么返回false;
  4. 否则,递归判断root1的左子树和root2的右子树、root2的左子树和root1的右子树是否对称。

C++ AC代码

#include <iostream>
using namespace std; 

struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
    TreeNode(int x) :
            val(x), left(NULL), right(NULL) {
    }
};

class Solution {
    public:
        bool isSymmetrical(TreeNode* pRoot){
            return this->IsSymmetrical(pRoot,pRoot);        
        }

        bool IsSymmetrical(TreeNode* root1,TreeNode* root2){
            if(root1 == NULL && root2 == NULL){
                return true;
            }
            if(root1 == NULL || root2 == NULL){
                return false;
            }
            if(root1->val != root2->val){
                return false;
            }else{
                return this->IsSymmetrical(root1->left,root2->right)&& this->IsSymmetrical(root1->right,root2->left);
            }
        }
};

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 剑指offer--树的子结构

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

    AI那点小事
  • 04-树6 Complete Binary Search Tree (30分)

    A Binary Search Tree (BST) is recursively defined as a binary tree which has the...

    AI那点小事
  • 九度OJ——1107搬水果

    题目描述: 在一个果园里,小明已经将所有的水果打了下来,并按水果的不同种类分成了若干堆,小明决定把所有的水果合成一堆。每一次合并,小明可以把两堆水果...

    AI那点小事
  • [剑指offer] 树的子结构

    输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

    尾尾部落
  • 剑指offer打卡5:二叉树的子结构

    输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

    帅地
  • 【剑指Offer】26. 树的子结构

    瑞新
  • 剑指offer 树的子结构

    输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

    week
  • 剑指offer--树的子结构

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

    AI那点小事
  • centos安装ab测试工具

    ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试...

    用户1141560
  • 解决Windows10或者其他版本Windows Update报错的问题

    最近更新系统,发现报错0x80248014,系统版本为redstone2(创意者更新)。

    williamwong

扫码关注云+社区

领取腾讯云代金券