the weight of a tree = sum of weight of all node in the tree. Weight of node
= value of node * level of the node in the tree。
这里的代码能计算weight
public int findWeight(TreeNode root) {
int res = 0;
if (root == null)
return res;
List curLevel = new ArrayList();
curLevel.add(root);
int level = 1;
while (!curLevel.isEmpty()) {
for (TreeNode p : curLevel)
res += p.val * level;
level ++;
List parentLevel = curLevel;
curLevel = new ArrayList();
for (TreeNode p : parentLevel) {
if (p.left != null)
curLevel.add(p.left);
if (p.right != null)
curLevel.add(p.right);
}
}
return res;
}