题目考察的知识点:树的遍历
题目解答方法的文字分析:这道题和判断两棵树是否相同基本一样,而判断树是否对称,则一个遍历左,一个遍历右;一个遍历右,另一个遍历左。
本题解析所用的编程语言:c++
bool _isSymmetric(TreeNode* p, TreeNode* q) { if (p == nullptr && q == nullptr) return true; if (p == nullptr || q == nullptr) return false; if (p->val != q->val) return false; return _isSymmetric(p->left, q->right) && _isSymmetric(p->right, q->left); } bool isSymmetric(TreeNode* root) { // write code here return _isSymmetric(root->left, root->right); }