매일 한 문제: LeetCode의 대칭 두 갈래 나무

2832 단어
두 갈래 나무를 정해서 거울이 대칭적인지 확인하세요.
예를 들어 두 갈래 나무[1,2,2,3,4,3]는 대칭적이다.
   1
  /  \
 2    2
/ \   / \
3 4  4  3  

두 노드가 같고 한 노드의 왼쪽 노드와 오른쪽 노드는 다른 노드의 오른쪽 노드와 왼쪽 노드, 즉 거울의 두 과목 트리와 같다.
public boolean isSymmetric(TreeNode root) {

        return ismirror(root,root);
    }
    public boolean ismirror(TreeNode Nodeleft,TreeNode Noderight){
        if(Nodeleft==null&&Noderight==null) return true;
        if(Nodeleft==null||Noderight==null) return false;
        return Nodeleft.val==Noderight.val&&ismirror(Nodeleft.left,Noderight.right)&&ismirror(Nodeleft.right,Noderight.left);
    }

좋은 웹페이지 즐겨찾기