LeetCode | 101. 对称二叉树
- 在本函数里不好进行判断,我们另外定义一个函数来
- 如果两个都相等为空,就返回true
- 一个为空,一个不为空
- 都不为空,就比较值
- 然后递归1的左,2的右,1的右,2的左
bool _isSymmetric(struct TreeNode* root1,struct TreeNode* root2) { //如果两个都相等为空,就返回true if(root1 == NULL && root2 == NULL) return true; //一个为空,一个不为空 if(root1 == NULL || root2 == NULL) return false; //都不为空,就比较值 if(root1->val != root2->val) return false; //遍历root1的左和2右 //1的右和2的左 return _isSymmetric(root1->left,root2->right) && _isSymmetric(root1->right,root2->left); } bool isSymmetric(struct TreeNode* root) { return _isSymmetric(root->left,root->right); }