与之前相同只不过是判断左右节点对应是否相等。
bool MyisSymmetric(struct TreeNode* Left,struct TreeNode* Right)
{
if(!Left&&!Right)
return true;
if(!Left||!Right)
return false;
if(Right->val!=Left->val)
return false;
return MyisSymmetric(Left->left,Right->right)&&MyisSymmetric(Left->right,Right->left);
}
bool isSymmetric(struct TreeNode* root) {
if(root==NULL)
return true;
return MyisSymmetric(root->left,root->right);
}