import { JavaObject } from '../../../java/lang/JavaObject'; import { Variable } from '../../../core/kursblockung/satsolver/Variable'; export declare class Heap extends JavaObject { private _data; private _size; /** * Konstruktor. */ constructor(); toString(): String; /** * Überprüft, ob der Heap leer ist. * * @return TRUE, wenn der Heap leer ist. */ isEmpty(): boolean; /** * Liefert das oberste (beste) Element des Heaps mit hoher Wahrscheinlichkeit. * * @return Liefert das oberste (beste) Element des Heaps mit hoher Wahrscheinlichkeit. */ top(): Variable; /** * Liefert die Anzahl an Elementen im Heap. * * @return Die Anzahl an Elementen im Heap. */ size(): number; /** * Fügt die Variable "var" dem Heap hinzu. Nach dem Einfügen kennt die Variable * mit {@link Variable#index} ihre eigene Position in diesem Heap. * * @param pVar Die einzufügende Variable. */ insert(pVar: Variable): void; /** * Entfernt die Variable pVar vom Heap. Dabei wird zunächst mit Hilfe von * {@link Variable#index} die Position bestimmt. Anschließend wird der Heap so * transformiert, dass die Variable entfernt werden kann. * * @param pVar Die zu entfernende Variable. */ remove(pVar: Variable): void; /** * Falls sich die Variable pVar im Heap befindet, wird sie entfernt und direkt * wieder hinzugefügt. Diese Methode muss aufgerufen werden, sobald die Variable * eine neue Bewertung erhalten hat. * * @param pVar Die Variable, deren Bewertung sich geändert hat. */ update(pVar: Variable): void; isTranspiledInstanceOf(name: string): boolean; } export declare function cast_de_nrw_schule_svws_core_kursblockung_satsolver_Heap(obj: unknown): Heap;