AutoFeedback API

Result 0e3c26f5-0f25-4a07-8316-38307d631db9

{
  "llm" : {
    "feedback" : "Exercise: sortalgs\n\n## 1. Correctness\n- In `SelectionSort`, dein Algorithmus implementiert nicht korrekt Selection Sort: Du suchst keinen Index des Minimums/Maximums im unsortierten Bereich und machst nicht genau **einen** Swap pro Außenschleifen-Durchlauf, sondern führst potenziell viele Swaps aus.\n- In `SelectionSort`, durch das sofortige Swappen innerhalb der inneren Schleife wird das Element an Position `max` mehrfach verändert, während du noch weiter vergleichst; dadurch ist das Ergebnis nicht garantiert sortiert.\n\n## 2. Suggestion\n- Überlege dir beim Selection Sort: Was ist die zentrale Idee pro Durchlauf? (Ein bestimmtes Element—z.B. das kleinste oder größte—im aktuellen unsortierten Bereich finden, seinen **Index merken**, und erst danach an die richtige Position tauschen.)\n- Versuche in der inneren Schleife statt zu swappen nur einen Kandidaten-Index (z.B. `min` oder `maxIndex`) zu aktualisieren, und mache den `swap` erst nach Abschluss der inneren Schleife.\n- Prüfe auch die Grenzen: Wenn du von hinten sortierst (mit `max`), dann muss die innere Schleife den gesamten Bereich `0..max` nach dem größten Element durchsuchen (bzw. `0..max` nach dem kleinsten, wenn du vorne aufbaust) und nicht bei jedem “größer/gleich”-Fund direkt tauschen.\n\n## 3. Code Style\n- In `SelectionSort` sind die Klammern inkonsistent (öffnende `{` teils in neuer Zeile, teils nicht). Einheitlicher Stil erhöht Lesbarkeit.\n- `data.size()` wird in Schleifenbedingungen wiederholt aufgerufen; speichere es (wie beim Beispiel) einmal in einer lokalen Variable, das macht den Code übersichtlicher.\n",
    "status" : "SUCCESS"
  }
}