매일 문제 --- LeetCode (617) 이진 트리를 병합

주제 설명 :

당신이 표지에 서로를 상상할 때, 두 이진 트리를 감안할 때, 일부 노드는 두 개의 이진 트리를 중복됩니다.
새 이진 트리로 병합해야합니다. 규칙의 통합은 두 개의 노드가 겹치는 경우, 그 값은 합병 노드 후 새 값으로 추가되는 것입니다,
또는 노드는 이진 트리로 새 노드를 지시 할 것입니다 NULL이 아니다.

 

생각 :
AB 동기 재귀 트리를 두 A와 B 수익률 것은 업데이트하는
순환 과정을 :
현재 노드가 비어 A는 경우, 현재 노드 B를 반환
현재 노드 B는 현재 노드 A가 비어 반환하는 경우
(이 경우는 이미 모두 포함) AB이 개 현재 노드가 비어 있거나 널 (null)이
발 현재의 노드 B에 추가됩니다 발 a를 돌아갑니다 다음 비어 있지는
T1 루트를 반환

클래스 솔루션 (객체)
     DEF mergeTrees (자기, T1, T2) 
        
        의 경우  되지 T1 :
             리턴 T2
         경우  되지 T2 :
             리턴 T1 
        t1.val + = t2.val 
        t1.left = self.mergeTrees (t1.left, T2. 왼쪽) 
        t1.right = self.mergeTrees (t1.right, t2.right)
         복귀 T1

링크 : HTTPS : //leetcode-cn.com/problems/merge-two-binary-trees/solution/zhi-xing-yong-shi-1ms-ji-bai-100-by-zmillionaire/

 

추천

출처www.cnblogs.com/fighting25/p/11487344.html