Klasse KlausurterminblockungAlgorithmusGreedy2
java.lang.Object
de.svws_nrw.core.utils.gost.klausurplanung.KlausurterminblockungAlgorithmusAbstract
de.svws_nrw.core.utils.gost.klausurplanung.KlausurterminblockungAlgorithmusGreedy2
public final class KlausurterminblockungAlgorithmusGreedy2
extends KlausurterminblockungAlgorithmusAbstract
Dieser Algorithmus hat folgende Strategie - Pseudocode:
Gehe die Klausurgruppen nach ihrem Knotengrad durch (hoch zu niedrig). Gehe die Termine in zufälliger Reihenfolge durch. Versuche die Klausur hinzuzufügen. Keinen Termin gefunden? Erzeuge einen neuen Termin und füge Klausur hinzu.
-
Feldübersicht
Von Klasse geerbte Felder de.svws_nrw.core.utils.gost.klausurplanung.KlausurterminblockungAlgorithmusAbstract
_dynDaten, _random
-
Konstruktorübersicht
KonstruktorBeschreibungKlausurterminblockungAlgorithmusGreedy2
(@NotNull Random pRandom, @NotNull KlausurterminblockungDynDaten pDynDaten) Konstruktor. -
Methodenübersicht
-
Konstruktordetails
-
KlausurterminblockungAlgorithmusGreedy2
public KlausurterminblockungAlgorithmusGreedy2(@NotNull @NotNull Random pRandom, @NotNull @NotNull KlausurterminblockungDynDaten pDynDaten) Konstruktor.- Parameter:
pRandom
- EinRandom
-Objekt zur Steuerung des Zufalls über einen Anfangs-Seed.pDynDaten
- Die aktuellen Blockungsdaten.
-
-
Methodendetails
-
toString
-
berechne
public void berechne(long pZeitEnde) Beschreibung aus Klasse kopiert:KlausurterminblockungAlgorithmusAbstract
Eine Unterklasse, die diese Methode implementiert, berechnet eine Verteilung der Klausuren auf Termine, beachtet dabei potentielle Regeln und überschreitet nicht die Endzeit (in Millisekunden).- Angegeben von:
berechne
in KlasseKlausurterminblockungAlgorithmusAbstract
- Parameter:
pZeitEnde
- Die Endzeit (in Millisekunden).
-