101. 对称二叉树c

/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
bool judge(struct TreeNode* left,struct TreeNode* right){
if(!left&&!right) return true;
if(!left&&right || !right&& left) return false;
if(left->val!=right->val) return false;
return judge(left->left,right->right)&&judge(left->right,right->left);
}
bool isSymmetric(struct TreeNode* root) {
if(!root) return true;
if(!root->left&&!root->right) return true;
if(!root->left&&root->right || root->left&&!root->right) return false;
if(root->left->val!=root->right->val) return false;
return judge(root->left,root->right);
}
结果:

浙公网安备 33010602011771号