Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

JAVA Recursively complete the sizeAtDepth for a binary tree. This should return

ID: 3876003 • Letter: J

Question

JAVA Recursively complete the sizeAtDepth for a binary tree. This should return all the total of all nodes below depth of k. One helper function must be used.

public class MyIntSET {

   private Node root;

   private static class Node {

       public final int key;

       public Node left, right;

       public Node(int key) { this.key = key; }

   }

   

   // the number of nodes in the tree, at exactly depth k

   // include node n if depth(n) == k

   public int sizeAtDepth(int k) {

       //TO DO//

       return 0;

}

   }

Explanation / Answer

Pseudocode:

int sizeAtDepth(Node node , int Level, int depth)
{ if(Level==0)
return node.key;
   else if (Level <= k)
       return node.key + sizeAtDepth(node.left, Level-1, depth) + sizeAtDepth(node.right, Level-1, depth);
else  
       return sizeAtDepth(node.left, Level-1, depth) + sizeAtDepth(node.right, Level-1, depth);
}

Use this logic to implement in your class