Package de.svws_nrw.core.kursblockung
Klasse KursblockungAlgorithmusSSchnellW
java.lang.Object
de.svws_nrw.core.kursblockung.KursblockungAlgorithmusS
de.svws_nrw.core.kursblockung.KursblockungAlgorithmusSSchnellW
Dieser Schülerverteilungs-Algorithmus verteilt die SuS auf ihre Kurse. Die Parameter sind so eingestellt, dass der
Algorithmus relativ schnell ist und dennoch eine hohe Güte hat. Benchmarks zeigen, dass er ca. 10 - 30 Millisekunden
benötigt.
-
Feldübersicht
Von Klasse geerbte Felder de.svws_nrw.core.kursblockung.KursblockungAlgorithmusS
_random, dynDaten, logger
-
Konstruktorübersicht
KonstruktorBeschreibungKursblockungAlgorithmusSSchnellW
(@NotNull Random pRandom, @NotNull Logger pLogger, @NotNull KursblockungDynDaten pDynDat) Im Konstruktor kann die Klasse die jeweiligen Datenstrukturen aufbauen. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungvoid
berechne()
Der Algorithmus verteilt die SuS auf ihre Kurse zufällig.
-
Konstruktordetails
-
KursblockungAlgorithmusSSchnellW
public KursblockungAlgorithmusSSchnellW(@NotNull @NotNull Random pRandom, @NotNull @NotNull Logger pLogger, @NotNull @NotNull KursblockungDynDaten pDynDat) Im Konstruktor kann die Klasse die jeweiligen Datenstrukturen aufbauen. Kurse dürfen in dieser Methode noch nicht auf Schienen verteilt werden.- Parameter:
pRandom
- EinRandom
-Objekt zur Steuerung des Zufalls über einen Anfangs-Seed.pLogger
- Logger zum Protokollieren von Warnungen und Fehlern.pDynDat
- Die dynamischen Blockungsdaten.
-
-
Methodendetails
-
berechne
public void berechne()Der Algorithmus verteilt die SuS auf ihre Kurse zufällig. Kommt es während des Verteilens zur Kollision, so wird der Kurs nicht gewählt.- Angegeben von:
berechne
in KlasseKursblockungAlgorithmusS
-