0

二分探索木の最小要素を見つけるのに苦労しています。いくつかのコードを完成させましたが、機能していません。

public T getMinElement(TreeNode<T> node) {
    //TODO: implement this
    if (node == null){
        return null;
    }
     if (node.getLeftChild() == null){
        return (T) node;
     }
     else{
        return getMinElement(node);
  }
}
4

1 に答える 1

6

あなたはほとんどそこにいました!二分探索木の左側の子を再帰するだけです (常に小さいことが保証されます)。また、いくつかの構文エラーがありましたが、修正しました。

public <T> T getMinElement(TreeNode<T> node) {
  if (node == null){
    return null;
  }
  if (node.getLeftChild() == null){
    return node.getData(); // or whatever your method is
  } else{
    return getMinElement(node.getLeftChild());
  }
}
于 2012-12-07T01:52:23.403 に答える