private static void Helper(LeetCode298TreeNode root, LeetCode298TreeNode parent, int length) { if (root == null) { return; } length = (parent != null && root.val == parent.val + 1) ? length++ : 1; maxLength = Math.Max(maxLength, length); Helper(root.left, root, length); Helper(root.right, root, length); }
public static int LongestConsecutive(LeetCode298TreeNode root) { Helper(root, null, 0); return(maxLength); }
public LeetCode298TreeNode(int val = 0, LeetCode298TreeNode left = null, LeetCode298TreeNode right = null) { this.val = val; this.left = left; this.right = right; }