力扣101. 对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。

 

示例 1:

输入:root = [1,2,2,3,4,4,3]
输出:true

 

示例 2:

输入:root = [1,2,2,null,3,null,3]
输出:false

 

 

提示:

  • 树中节点数目在范围 [1, 1000] 内
  • -100 <= Node.val <= 100

 

康复训练

 1 /*
 2  * @lc app=leetcode.cn id=101 lang=cpp
 3  *
 4  * [101] 对称二叉树
 5  */
 6 
 7 // @lc code=start
 8 /**
 9  * Definition for a binary tree node.
10  * struct TreeNode {
11  *     int val;
12  *     TreeNode *left;
13  *     TreeNode *right;
14  *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
15  *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
16  *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
17  * };
18  */
19 class Solution {
20 public:
21     bool result=true;
22     void travel(TreeNode* left,TreeNode* right){
23         if (left != nullptr&&right !=nullptr){
24             if (left->val!=right->val)
25                 result=false;
26             else{
27                 travel(left->left,right->right);
28                 travel(left->right,right->left);
29             }
30         }
31         else if (left==nullptr&&right==nullptr){
32             return;
33         }else{
34             result=false;
35         }
36 
37     }
38     bool isSymmetric(TreeNode* root) {
39         travel(root->left,root->right);
40         return result;
41     }
42 };
43 // @lc code=end

 

posted on 2023-08-19 21:46  Coder何  阅读(15)  评论(0)    收藏  举报