123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- import { Comparator } from '../../../java/util/Comparator';
- import { JavaIterator } from '../../../java/util/JavaIterator';
- import { Collection } from '../../../java/util/Collection';
- import { Cloneable } from '../../../java/lang/Cloneable';
- import { JavaObject } from '../../../java/lang/JavaObject';
- import { Queue } from '../../../java/util/Queue';
- export declare class MinHeap<T> extends JavaObject implements Queue<T>, Cloneable {
- private _size;
- private _nodes;
- private readonly _comparator;
- private readonly _initialCapacity;
- protected _modCount: number;
- /**
- * Erzeugt einen neuen Minimum-Heap mit dem übergebenen {@link Comparator} und
- * der übergebenen initialen Kapazität.
- *
- * @param comparator das Objekt zum Vergleich von zwei Objekten des Typ T
- * @param initialCapacity die initiale Kapazität des Baums
- */
- constructor(comparator: Comparator<T>, initialCapacity: number);
- /**
- * Erzeugt einen neuen Minimum-Heap mit dem übergebenen {@link Comparator} und
- * einer initialen Kapazität von 63.
- *
- * @param comparator das Objekt zum Vergleich von zwei Objekten des Typ T
- */
- constructor(comparator: Comparator<T>);
- /**
- * Erstellt eine Kopie des als Parameter übergebenen Heaps.
- *
- * @param original Das zu kopierende Original
- */
- constructor(original: MinHeap<T>);
- add(e: T): boolean;
- element(): T;
- offer(e: T): boolean;
- peek(): T | null;
- poll(): T | null;
- remove(): T;
- remove(o: unknown | null): boolean;
- size(): number;
- isEmpty(): boolean;
- contains(o: unknown | null): boolean;
- containsAll(c: Collection<unknown> | null): boolean;
- addAll(c: Collection<T> | null): boolean;
- removeAll(c: Collection<unknown> | null): boolean;
- retainAll(c: Collection<unknown> | null): boolean;
- clear(): void;
- toArray(): Array<unknown>;
- toArray<U>(a: Array<U>): Array<U>;
- iterator(): JavaIterator<T>;
- clone(): unknown;
- /**
- * Gibt den {@link Comparator} des Minimum Heaps zurück.
- *
- * @return der Comparator
- */
- comparator(): Comparator<T>;
- /**
- * Gibt die aktuelle Kapazität des Arrays zurück.
- *
- * @return die aktuelle Kapazität des Arrays zurück
- */
- capacity(): number;
- /**
- * Gibt den Inhalt des Minimum Heaps in einem sortierten Array zurück.
- *
- * @return ein sortiertes Array mit den Elementen des Minimum Heaps.
- */
- toSortedArray(): Array<T>;
- /**
- * Gibt den Inhalt des Heaps als Array-Repräsentation aus.
- *
- * @return der Inhalt des Heaps
- */
- toString(): String;
- /**
- * Ermittelt eine Hash-Code für dieses Objekt basierend auf den gespeicherten
- * Daten im Heap (die konkrete Ordnung des Baumes wird nicht unterschieden).
- *
- * @return der Hashcode des Minimum Heaps
- */
- hashCode(): number;
- /**
- * Prüft, ob das übergebene Objekt ein Minimum-Heap ist, der
- * die gleichen Elemente mit der gleichen Ordnung beinhaltet.
- *
- * @param obj das zu vergleichende Objekt
- */
- equals(obj: unknown | null): boolean;
- /**
- * Liefert zum Index i den Index des Elter zurück.
- *
- * @param i
- *
- * @return den Index des Elter
- */
- private static getParentIndex;
- /**
- * Liefert zum Index i den Index des linken Kindes zurück.
- *
- * @param i
- *
- * @return den Index des linken Kindes
- */
- private static getLeftChildIndex;
- /**
- * Liefert zum Index i den Index des rechten Kindes zurück.
- *
- * @param i
- *
- * @return den Index des rechten Kindes
- */
- private static getRightChildIndex;
- /**
- * Tauscht die Elemente an den Stellen i und j im Array
- *
- * @param i
- * @param j
- */
- private swap;
- /**
- * Stellt die Minimum Heap Eigenschaft vom Index i aus im Baum abwärts her.
- *
- * @param i ab diesem Index wird im Baum abwärts geprüft.
- */
- private heapifyDown;
- /**
- * Stellt die Minimum-Heap-Eigenschaft des Arrays ab Position i aufwärts wieder her.
- *
- * @param i ab diesem Index wird überprüft
- */
- private heapifyUp;
- /**
- * Erstellt ein neues Array vom Typ T mit der angegebenen Länge.
- *
- * @param elem Ein Element vom Typ T, welches als Vorlage für die Elemente des Arrays dient
- * @param length die Länge des neuen Arrays
- *
- * @return das neue Array
- */
- private newArray;
- /**
- * Erzeugt eine Kopie des internen Arrays _nodes.
- *
- * @return die Kopie des _nodes-Array.
- */
- private copyNodes;
- /**
- * Lässt den dem Baum zu Grunde liegenden Baum wachsen. Verdoppelt die Menge der Elemente, die im Heap
- * gespeichert werden können.
- *
- * Falls der Heap durch das Wachsen auf mehr als {@link Integer.MAX_VALUE} Elemente ansteigen würde,
- * wird eine IllegalStateException geworfen.
- *
- * @throws IllegalStateException
- */
- private grow;
- /**
- * Findet den Index an dem das Element t im dem dem Heap zu Grunde liegendem Array gespeichert ist.
- * Gibt -1 zurück, falls das Element nicht vorhanden ist.
- *
- * @param t zu diesem Element soll der Index gefunden werden
- *
- * @return der Index, falls das Element enthalten ist, ansonsten -1
- */
- private findIndex;
- /**
- * Gibt die Anzahl der Operationen zurück, die diese Datenstruktur
- * verändert haben.
- *
- * @return die Anzahl der Operationen
- */
- getModCount(): number;
- isTranspiledInstanceOf(name: string): boolean;
- [Symbol.iterator](): Iterator<T>;
- }
- export declare function cast_de_nrw_schule_svws_core_adt_tree_MinHeap<T>(obj: unknown): MinHeap<T>;
|