Longest Univalue Path - Tree - Easy - LeetCode
💻 coding

Longest Univalue Path - Tree - Easy - LeetCode

1 min read 213 words
1 min read
ShareWhatsAppPost on X
  • 1The longest univalue path in a binary tree is defined by consecutive nodes with the same value.
  • 2The path length is measured by the number of edges connecting the nodes.
  • 3The algorithm has a time complexity of O(n) and a space complexity of O(1).

AI-generated summary · May not capture all nuances

Key Insight
AskGif

"The longest univalue path in a binary tree is defined by consecutive nodes with the same value."

Longest Univalue Path - Tree - Easy - LeetCode

Given a binary tree, find the length of the longest path where each node in the path has the same value. This path may or may not pass through the root.

The length of path between two nodes is represented by the number of edges between them.

Example 1:

Input:

5 / \ 4 5 / \ \ 1 1 5 Output: 2

Example 2:

Input:

1 / \ 4 5 / \ \ 4 4 5 Output: 2

Note: The given binary tree has not more than 10000 nodes. The height of the tree is not more than 1000.

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 * public int val;
 * public TreeNode left;
 * public TreeNode right;
 * public TreeNode(int val=0, TreeNode left=null, TreeNode right=null) {
 * this.val = val;
 * this.left = left;
 * this.right = right;
 * }
 * }
 */
public class Solution {
 int max = 0;
 public int LongestUnivaluePath(TreeNode root) {
 if(root==null){
 return 0;
 } 
 
 Helper(root,null);
 return max;
 }
 
 private int Helper(TreeNode root, int? parent){
 if(root == null){
 return 0;
 }
 
 int left = Helper(root.left,root.val);
 int right = Helper(root.right,root.val);
 
 max = Math.Max(max,left+right);
 if(parent!=null && root.val == parent){
 return 1+Math.Max(left,right);
 }
 return 0; 
 }
}

Time Complexity: O(n)

Space Complexity: O(1)

Enjoyed this article?

Share it with someone who'd find it useful.

ShareWhatsAppPost on X

sumitc91

Published on 8 October 2020 · 1 min read · 213 words

Part of AskGif Blog · coding

You might also like