MCPcopy Create free account
hub / github.com/Tiwarishashwat/InterviewCodes / dfs

Method dfs

NumberOfGoodLeafNodes.java:33–55  ·  view source on GitHub ↗
(TreeNode root, int distance)

Source from the content-addressed store, hash-verified

31class Solution {
32 int res=0;
33 public int[] dfs(TreeNode root, int distance){
34 int leafDist[] = new int[11];
35 if(root==null){
36 return leafDist;
37 }else if(root.left==null && root.right==null){
38 leafDist[1] = 1;
39 return leafDist;
40 }
41 int leftLeafDist[] = dfs(root.left,distance);
42 int rightLeafDist[] = dfs(root.right,distance);
43
44 for(int d1=1;d1<=distance;d1++){
45 for(int d2=1;d2<=distance;d2++){
46 if(d1+d2<=distance){
47 res += leftLeafDist[d1] * rightLeafDist[d2];
48 }
49 }
50 }
51 for(int d=1;d<11;d++){
52 leafDist[d] = leftLeafDist[d-1] + rightLeafDist[d-1];
53 }
54 return leafDist;
55 }
56 public int countPairs(TreeNode root, int distance) {
57 dfs(root,distance);
58 return res;

Callers 1

countPairsMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected