public int everage()
{
System.out.print("\n平均值: ");
return everage(root);
}
public int everage(BinaryNode<E> p) //先根次序遍历以p结点为根的子二叉树,sum作为累加和,count记录结点数
{
int sum = 0;
int count=0;
if (p!=null) //若二叉树不空
{
sum+=(Integer)p.data;
count ++;
everage(p.left);
everage(p.right);
}
return sum/count;
}
我这是错的,我感觉是循环出问题了,我让返回值等于sum,结果是我所建二叉树的根结点的值,而且count等于0,不知道到底怎么改
{
System.out.print("\n平均值: ");
return everage(root);
}
public int everage(BinaryNode<E> p) //先根次序遍历以p结点为根的子二叉树,sum作为累加和,count记录结点数
{
int sum = 0;
int count=0;
if (p!=null) //若二叉树不空
{
sum+=(Integer)p.data;
count ++;
everage(p.left);
everage(p.right);
}
return sum/count;
}
我这是错的,我感觉是循环出问题了,我让返回值等于sum,结果是我所建二叉树的根结点的值,而且count等于0,不知道到底怎么改