Nowcoder 27. 두 갈래 나무의 거울

제목 링크:https://www.nowcoder.com/practice/564f4c26aa584921bc75623e48ca3011

기사 목록

  • 1. 사고방식
  • 2. 복잡도
  • 3. 코드
  • 1. 생각


    모든 비잎 노드에 대해 좌우 노드를 바꾸면 두 갈래 나무의 거울 회전을 실현할 수 있다.
    본고는 두 갈래 트리의 역행 방식을 고찰하고 전순, 중순, 후순과 차원 역행 모두 상술한 조작을 실현할 수 있으며 모든 역행은 역귀 또는 교체 전략으로 실현할 수 있다.

    2. 복잡도

  • 시간 복잡도: O(n)
  • 공간 복잡도: O(1)
  • 3. 코드

    class Solution {
        public void Mirror(TreeNode root) {
            if (root == null) {
                return;
            }
    
            TreeNode tmp = root.left;
            root.left = root.right;
            root.right = tmp;
            Mirror(root.left);
            Mirror(root.right);
        }
    }
    

    좋은 웹페이지 즐겨찾기