[99클럽 코테 스터디 14일차 TIL] 트리

sarah·2024년 8월 5일
0

programmers

목록 보기
14/21

문제



public class TreeNode {
    int val;
    TreeNode left;
    TreeNode right;
    TreeNode() {}  
    TreeNode(int val) { this.val = val; }
    TreeNode(int val, TreeNode left, TreeNode right) {
        this.val = val;
        this.left = left;
        this.right = right;
    }
}


class Solution {
    public boolean isSymmetric(TreeNode root) {
        if (root == null) return true;

        return isMirror(root.left, root.right);
    }

    private boolean isMirror(TreeNode left, TreeNode right) {
        if (left == null && right == null) return true;
        
        if (left == null || right == null) return false;

        return (left.val == right.val) &&
               isMirror(left.left, right.right) &&
               isMirror(left.right, right.left);
    }
}

회고

어제와 비슷하게 재귀를 통해 풀어나가면 된다. 하지만 또 막혀버렸다.. 연습만이 살길! 아좌좌~

0개의 댓글