力扣 hot100 Day35

101. 对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。

cpp 复制代码
//看提示写的
class Solution {
public:

    bool isSymmetric(TreeNode*leftnode,TreeNode*rightnode)
    {
        if(leftnode == nullptr && rightnode == nullptr) return true;
        if(leftnode == nullptr || rightnode == nullptr) return false;

        return (leftnode->val==rightnode->val)
                &&isSymmetric(leftnode->left,rightnode->right)
                &&isSymmetric(leftnode->right,rightnode->left);
        
    }

    bool isSymmetric(TreeNode* root) {
        return isSymmetric(root->left,root->right);        
    }
};

检测根节点是否对称,需要判断,其左节点与右节点值是否相等,同时其左节点的左节点和右节点的右节点是否对称,以及左节点的右节点和右节点的左节点是否对称。

比较难想到的是,单独写一个函数判断两个节点是否对称