LeetCode 솔루션					분류
				
						[Easy - wk4 - Q2] 101. Symmetric Tree
본문
Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center).
Example 1:

Input: root = [1,2,2,3,4,4,3] Output: true
Example 2:

Input: root = [1,2,2,null,3,null,3] Output: false
Constraints:
- The number of nodes in the tree is in the range [1, 1000].
- -100 <= Node.val <= 100
Follow up: Could you solve it both recursively and iteratively?
관련자료
			댓글 2
					
			mingki님의 댓글
- 익명
- 작성일
					
										
					C++
Runtime: 14 ms, faster than 13.66% of C++ online submissions for Symmetric Tree.
Memory Usage: 16.3 MB, less than 93.41% of C++ online submissions for Symmetric Tree.
				
													
								Runtime: 14 ms, faster than 13.66% of C++ online submissions for Symmetric Tree.
Memory Usage: 16.3 MB, less than 93.41% of C++ online submissions for Symmetric Tree.
class Solution {
    bool helper(TreeNode *left, TreeNode *right) {
        if (!left && !right) return true;
        if (!left || !right) return false;
        return left->val == right->val &&
               helper(left->left, right->right) &&
               helper(left->right, right->left);
    }
    
public:
    bool isSymmetric(TreeNode *root) {
        return helper(root, root);
    }
};dawn27님의 댓글
- 익명
- 작성일
					
										
					JS
Runtime: 77 ms, faster than 79.08% of JavaScript online submissions for Symmetric Tree.
Memory Usage: 44.3 MB, less than 85.73% of JavaScript online submissions for Symmetric Tree.
				
													
								Runtime: 77 ms, faster than 79.08% of JavaScript online submissions for Symmetric Tree.
Memory Usage: 44.3 MB, less than 85.73% of JavaScript online submissions for Symmetric Tree.
var isSymmetric = function(root) {
  if (root === null) {
    return true;
  }
  return isMirror(root.left, root.right);
}
var isMirror = function(tree1, tree2) {
  if (tree1 === null || tree2 === null) {
    return tree1 === tree2;
  }
  if (tree1.val !== tree2.val) {
    return false;
  }
  return isMirror(tree1.left, tree2.right) && isMirror(tree1.right, tree2.left);
}; 
								 
							








