给定一棵二叉树,判断其是否是自身的镜像(即:是否对称)
bool dfs(TreeNode* p1, TreeNode* p2){
// 都为nullptr 必对称
if(p1 == nullptr && p2 == nullptr) return true;
// 不对称
if(p1 == nullptr || p2 == nullptr || p1->val != p2->val) return false;
return dfs(p1->left, p2->right) && dfs(p1->right, p2->left);
}
bool isSymmetrical(TreeNode* pRoot) {
// write code here
if(pRoot == nullptr) return true;
return dfs(pRoot->left, pRoot->right);
}