【发布时间】:2015-06-29 17:05:31
【问题描述】:
我正在尝试在树中搜索元素 e,但是正如您所见,我的 search(Position,E) 没有返回位置。但是,当我添加“return null;”时在方法结束时。它仅在我要查找的位置位于其父级的最左侧的位置时才有效,否则返回 null。我怎样才能让它一直工作直到它到达树的尽头?
public Position<E> search(E e) {
return search(root(), e);
}
public Position<E> search(Position<E> p, E e) {
if(p.getElement().equals(e))
return p;
for(Position<E> c: children(p))
return search(c, e);
}
【问题讨论】:
-
childeren(p) 返回什么?
-
你的职位有leftNode和rightNode吗?树是二叉树吗?还是 n 进制?
-
@Alp children(p) 返回一个 Iterable
>,它是节点 p 的子节点, -
@pedromss 这是一棵普通的树
标签: java algorithm data-structures tree