【发布时间】:2018-05-07 17:46:12
【问题描述】:
我正在尝试使用一种方法来计算 BST 中大于 x 的元素数量:如果树包含 {3, 7, 8, -4, 6} 和 x = 6,则方法应为 return 2。
目前,我的 compareTo 出现找不到符号错误...这是我的代码:
public int countGreater(T x)
{
BSTNode<T> base = root;
if(base == null) return 0;
int greater = great(base, x);
return greater;
}
private int great(BSTNode<T> base, T x)
{
int numG = 0;
Iterator<T> getGreatest = getIterator(Postorder);
while(getGreatest.hasNext())
{
if(compare(getGreatest.next(), x) > 0)
{
numG++;
}
}
return numG;
}
public int compare(T a, T b)
{
return (a.compareTo(b));
}
【问题讨论】:
-
T是如何定义的? -
您的
T是否定义为Comparable本身?
标签: java compare binary-tree compareto