您将从以下接口实现堆:
public interface Heap<V extends Comparable<V>> {
public void add(V value);
public V[] toArray(V[] array);
public V remove();
public void fromArray(V[] array);
public V[] getSortedContents(V[] array);
}但是,堆应该实现为节点堆,也就是说,内部实现应该是树而不是数组。getSortedContents方法应该在内部将堆转换为其数组表示,并在其上执行堆排序,然后返回数组作为结果。
这个提示让我有点困惑。我的问题是,这究竟是要我做什么?我很难理解提示符。它想让我只创建一个名为NodeHeap.java的类来实现堆吗?
更新:那么我的NodeHeap类会像这样吗?还是我完全错了
public class NodeHeap<V> implements Heap<V> {
@Override
public void add(V value) {
}
@Override
public V[] toArray(V[] array) {
return null;
}
@Override
public V remove() {
return null;
}
@Override
public void fromArray(V[] array) {
}
@Override
public V[] getSortedContents(V[] array) {
return null;
}}‘
https://stackoverflow.com/questions/35008537
复制相似问题