欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

对称的二叉树

程序员文章站 2022-07-14 18:05:39
...

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

class Solution {
public:
    bool isSymmetrical(TreeNode* pRoot)
    {
        if(pRoot==nullptr)
        {
            return true;
        }
        return issame(pRoot->left,pRoot->right);
    }
    bool issame(TreeNode* pRoot1,TreeNode* pRoot2)
                 {
                     if(pRoot1==nullptr&&pRoot2==nullptr)
                        {
                            return true;
                        }
                     if(pRoot1==nullptr||pRoot2==nullptr)
                     {
                         return false;
                     }
                    if( pRoot1->val !=  pRoot2->val)
                            return false;
                     return issame(pRoot1->left,pRoot2->right)&&issame(pRoot1->right,pRoot2->left);
                 }

};