본문 바로가기
알고리즘 문제/Leetcode

[Leetcode] 623. Add One Row to Tree

by 햄과함께 2022. 10. 5.
320x100

문제 : https://leetcode.com/problems/add-one-row-to-tree/


루트부터 자식으로 탐색해가면서 현재 depth가 새로운 노드가 추가되어야 하는 위치의 부모 노드라면 (1) (depth-1 이라면)

새로운 노드를 만들고 왼쪽 자식 노드에 들어갈 새로운 노드의 왼쪽 자식엔 원래의 왼쪽 자식 노드를 연결(2)한다.

오른쪽 자식 노드에 들어갈 새 노드의 오른쪽 자식엔 원래 오른쪽 자식 노드를 연결(3)한다.

새로 만든 노드들을 탐색 중인 노드의 자식 노드들로 연결(4)한다.

 

시간 복잡도는 O(N). N = 노트 수


소스코드 

https://github.com/fpdjsns/Algorithm/blob/master/leetcode/medium/623.%20Add%20One%20Row%20to%20Tree(recursion).cpp 

https://github.com/fpdjsns/Algorithm/blob/master/leetcode/medium/623.%20Add%20One%20Row%20to%20Tree.cpp


+

이거를 위한 빌드업

오랜만에 들어왔는데 UI가 이쁘게 바뀌었다.

트리 예시로 넣으면 트리 비주얼라이징도 별다른 액션 안해도 바로 보여주고 좋은데~~~?! 

320x100

댓글