Question
Create a program named TreeWeightedSum.java and implement the following method: public int weightedSum(BT bt) BT.java and BTNode.java is provided. This method accepts a BT as
Create a program named TreeWeightedSum.java and implement the following method: public int weightedSum(BT bt) BT.java and BTNode.java is provided. This method accepts a BT as a parameter and returns the sum of the values stored in a binary tree of integers weighted by the depth of each value. You should return the value at the root plus 2 times the values stored at the next level of the tree plus 3 times the values stored at the next level of the tree plus 4 times the values stored at the next level of the tree and so on. For example, in the tree below: +---+ | 9 | +---+ / \ +---+ +---+ | 5 | | 10 | +---+ +---+ / \ \ +---+ +---+ +---+ | 4 | | 7 | | 20 | +---+ +---+ +---+ / \ +---+ +---+ | 6 | | 25 | +---+ +---+ The sum would be computed as: 1 * 9 + 2 * (5 + 10) + 3 * (4 + 7 + 20) + 4 * (6 + 25) = 256
Provided: BT.java and BTNode.java
public class BT{ BTNode root; public BT(){ root=null; }
public void insertNode(int data){ insertNode(new BTNode(data)); } public void insertNode(BTNode node){ root=insertNodeHelper(root, node); } private BTNode insertNodeHelper(BTNode tree, BTNode node){ if(tree==null) tree=node; else if(node.compareTo(tree)<=0) tree.setLeft(insertNodeHelper(tree.getLeft(), node));
else tree.setRight(insertNodeHelper(tree.getRight(), node)); return tree; } }
public class BTNode{ private BTNode left, right; private int data; public BTNode(){ left=right=null; data=0; } public BTNode(int data){ this.data=data; left=right=null; } public void setLeft(BTNode node){ left=node; } public void setRight(BTNode node){ right=node; } public BTNode getLeft(){ return left; } public BTNode getRight(){ return right; } public void setData(int data){ this.data=data; } public int getData(){ return data; } public int compareTo(BTNode node){ return data - node.data; } public int compareTo(int data){ return this.data - data; } }
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started