Hi hi
ich hab ein kleines Problem bei einer Implementierung, ich häng grad irgendwie.
Kurz zur Aufgabe: Studenten tragen sich in eine Liste, weil sie an einer Übung teilnhmen wollen und müssen Ihre Daten eingeben. Die Übung hat eine bestimmte anzahl an gruppen und die studenten dürfen diese Gruppe selber wählen.
Ich habe Namen nach Bubbelsort sortiert und muss diese in einer anderen Methode aufrufen und dann einer bestimmten Anzahl an Gruppen unterteilen. Die Studenten haben ja die Gruppe frei gewähtl und diese wird in der Metohde getGruppe gepeichert.
Die Anzahl der Gruppen hab ich als Konstante festgesetzt.
Ich weiß, dass ich mein i = 1 setze und i <= der maximalen Anzahl von Gruppen, das alles in einer forschleife, dann läutf das ganze so lange ab, bis ich bei max.anzahl an gruppen angekommen bin.
Aber wie bringe ich die Namen die ich aus der anderen Methode geholt habe in diese Sortierung rein und speichere sie??
ich hab ein kleines Problem bei einer Implementierung, ich häng grad irgendwie.
Kurz zur Aufgabe: Studenten tragen sich in eine Liste, weil sie an einer Übung teilnhmen wollen und müssen Ihre Daten eingeben. Die Übung hat eine bestimmte anzahl an gruppen und die studenten dürfen diese Gruppe selber wählen.
Ich habe Namen nach Bubbelsort sortiert und muss diese in einer anderen Methode aufrufen und dann einer bestimmten Anzahl an Gruppen unterteilen. Die Studenten haben ja die Gruppe frei gewähtl und diese wird in der Metohde getGruppe gepeichert.
Die Anzahl der Gruppen hab ich als Konstante festgesetzt.
Ich weiß, dass ich mein i = 1 setze und i <= der maximalen Anzahl von Gruppen, das alles in einer forschleife, dann läutf das ganze so lange ab, bis ich bei max.anzahl an gruppen angekommen bin.
Aber wie bringe ich die Namen die ich aus der anderen Methode geholt habe in diese Sortierung rein und speichere sie??
Code:
public void sortierenNachNamen() {
int anzahlTeilnehmer = 0;
TeilnehmendePerson sortiere;
for(int i = 0; i < MAX_ANZAHL_TEILNEHMER * MAX_ANZAHL_GRUPPEN; i++) {
if(teilnehmer[i] != null) {
anzahlTeilnehmer++;
}
for(i = 0; i < anzahlTeilnehmer; i++){
TeilnehmendePerson ersterTeilnehmer = teilnehmer[i];
TeilnehmendePerson zweiterTeilnehmer = teilnehmer[i + 1];
if(ersterTeilnehmer.getNachName().compareToIgnoreCase(zweiterTeilnehmer.getNachName()) > 0) {
sortiere = teilnehmer[i];
teilnehmer[i] = teilnehmer[i + 1];
teilnehmer[i + 1] = sortiere;
}
else if(ersterTeilnehmer.getNachName().compareToIgnoreCase(zweiterTeilnehmer.getNachName()) == 0) {
if(ersterTeilnehmer.getName().compareToIgnoreCase(zweiterTeilnehmer.getName()) > 0) {
sortiere = teilnehmer[i];
teilnehmer[i] = teilnehmer[i + 1];
teilnehmer[i + 1] = sortiere;
}
}
}
}
}
private void sortierenNachGruppen(){
sortierenNachNamen();
for(int i= 1; i <= MAX_ANZAHL_GRUPPEN; i++){
}
}