[알고리즘] 이 진 트 리 의 최대 경로 와
묘사 하 다.
비어 있 지 않 은 이 진 트 리 를 지정 하여 최대 경로 와.
: [-10,9,20,null,null,15,7]
-10
/ \
9 20
/ \
15 7
: 42
문제 풀이 의 사고 방향.
1. 모든 노드 에 대해 이 를 통과 하지만 부모 노드 를 통과 하지 않 는 가장 큰 경로 와.2. 전체 최대 경 로 는 모든 노드 결과 의 최대 값 입 니 다.
//
private int sum = Integer.MIN_VALUE;
//
private int nodeValue(TreeNode node)
{
if (node == null) return 0;
//
int leftValue = Math.max(nodeValue(node.left), 0);
int rightValue = Math.max(nodeValue(node.right), 0);
//
sum = Math.max(sum, node.val + leftValue + rightValue);
return node.val + Math.max(leftValue, rightValue);
}
// 、 :O(n)
public int maxPathSum(TreeNode root)
{
return Math.max(this.nodeValue(root), sum);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.