/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } }; */ class Solution { public:
bool isSame(TreeNode* root1, TreeNode* root2)
{
if(!root1 && !root2) return true;
if(root1 && !root2) return false;
if(!root1 && root2) return false;
return root1 -> val == root2 -> val
&& isSame(root1 -> left, root2 -> right) && isSame(root1 -> right, root2 -> left);
}
bool isSymmetrical(TreeNode* pRoot) {
return isSame(pRoot, pRoot);
}
};

京公网安备 11010502036488号