101.对称二叉树

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

示例一:

输入: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

方法一:递归

时间复杂度:O(n)

空间复杂度:O(n)

 1 /**
 2  * Definition for a binary tree node.
 3  * function TreeNode(val, left, right) {
 4  *     this.val = (val===undefined ? 0 : val)
 5  *     this.left = (left===undefined ? null : left)
 6  *     this.right = (right===undefined ? null : right)
 7  * }
 8  */
 9 /**
10  * @param {TreeNode} root
11  * @return {boolean}
12  */
13 var isSymmetric = function(root) {
14    return isSymmetricTree(root,root);
15 };
16 var isSymmetricTree=function(node1,node2){
17     if(!node1&&!node2){return true; }
18     if(!node1||!node2){return false;}
19     if(node1.val!==node2.val){return false;}
20     return isSymmetricTree(node1.left,node2.right)&&isSymmetricTree(node1.right,node2.left);
21 }
posted @ 2021-05-19 15:00  icyyyy  阅读(85)  评论(0)    收藏  举报