/*
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* rt) {
if(!rt) return true;
return check(rt->left,rt->right);
}
bool check(TreeNode* l,TreeNode* r){
if(l&&r){
if(l->val==r->val) return check(l->left,r->right)&&check(l->right,r->left);
return false;
}else if(!l&&!r) return true;
return false;
}
}; 
京公网安备 11010502036488号