как реализовать печать порядка уровня для MaxHeap - PullRequest
1 голос
/ 23 апреля 2019

Я сейчас создаю программу MaxHeap, и мне нужно распечатать мою кучу в порядке уровней.Как это может быть сделано?Создаю ли я метод для печати кучи в порядке уровней внутри моего класса кучи или я сделаю это в своем основном классе?Я знаю, что, как и мой проект дерева бинарного поиска, я использовал итерационные методы и вызывал их из своего основного класса, но я не уверен, что смогу сделать это здесь.Ниже моя реализация класса MaxHeap из моего учебника:

public final class MaxHeap<T extends Comparable<? super T>> implements MaxHeapInterface<T>
{
private T[] heap;
private int lastIndex;
private boolean initialized = false;
private static final int DEFAULT_CAPACITY = 25;
private static final int MAX_CAPACITY = 10000;

int swaps=0;

public MaxHeap() {
this(DEFAULT_CAPACITY);
}

public MaxHeap(int initialCapacity) {
if (initialCapacity < DEFAULT_CAPACITY)
    initialCapacity = DEFAULT_CAPACITY;
else
    checkCapacity(initialCapacity);

@SuppressWarnings("unchecked")
T[] tempHeap = (T[]) new Comparable[initialCapacity + 1];
heap = tempHeap;
lastIndex = 0;
initialized = true;
}

public T getMax() {
checkInitialization();
T root = null;
if (!isEmpty())
    root = heap[1];
return root;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...