对称二叉树https://leetcode-cn.com/problems/symmetric-tree/
题目描述:
给你一个二叉树的根节点 root
, 检查它是否轴对称。
思路分析:
判断是不是对称二叉树,可是设置两个指针同时指向根节点,一个向左一个向右,总是反方向,同时还要比较节点的值
c++实现 :
class Solution {
public:
bool check(TreeNode *p, TreeNode *q) {
if (!p && !q) return true;
if (!p || !q) return false;
return p->val == q->val && check(p->left, q->right) && check(p->right, q->left);
}
bool isSymmetric(TreeNode* root) {
return check(root, root);
}
};