Schönen guten Abend!
Jeder der nicht weiß was er/sie mit seiner/ihrer Zeit anfangen soll, kann sich ja mal an folgender Aufgabe versuchen: Es sollen die mindestens benötigten Sortierung-Schritte ermittelt werden, um einen String zu sortieren.
Der zu sortierende String besteht aus positiven sowie negativen Ganzzahlen von 0 bis x. Dabei ist jeweils die positive oder die negative Zahl vertreten. Das bedeutet, dass im String z.B. nur eine „2“ vorkommen kann. Entweder als positive Version „+2“ oder negative Version „-2“. Aber niemals beide zusammen. Als Beispielstring sei mal hier „8 0 3 1 6 5 -2 4 7“ genannt. Für die Sortierung gibt es ein bestimmtes Verfahren welches eingehalten werden muss. Im Grunde lässt sich dies in 4 Schritten erklären. Im Folgenden wird auf den oberen genannten Beispielstring zurückgegriffen.
1. Schritt:
Zuerst wird sich ein Teilstring ausgesucht, nehmen wir einfach mal die Zahlen „3 1 6 5“ (ab der 2ten Position im Beispielstring).
2. Schritt:
Jetzt werden die Vorzeichen aller Zahlen getauscht. Positive Zahlen werden zu negativen Zahlen und anders herum: „-3 -1 -6 -5“
3. Schritt:
Nun müssen die Zahlen in ihrer Reihenfolge einmal umgedreht werden: „-5 -6 -1 -3“
4. Schritt:
Der Teilstring wird wieder in den String eingefügt: „8 0 -5 -6 -1 -3 -2 4 7“
Alle 4 Schritte zusammen ergeben einen Sortierung-Schritt. Am Ende sollten alle Ziffern positiv und nach der Größe sortiert sein. Unser Beispielstring sollte also so aussehen: „0 1 2 3 4 5 6 7 8“. Die Frage ist nun, wie viele Schritte sind nun mindestens notwendig, um dies zu erreichen?
Ich wünsche viel Spaß bei der Lösung dieser Aufgabe! Haltet am besten euren Algorithmus so, dass verschiedene Eingaben entgegengenommen werden können. Für den Abschluss hier einmal noch ein komplettes Beispiel, wie ein String sortiert werden könnte um auf's Endergebnis zu kommen:
0 +3 +1 +6 +5 -2 +4 7
0 -5 -6 -1 -3 -2 +4 7
0 -5 -6 -1+2 +3 +4 7
0 -5 -6 +1 +2 +3 +4 7
0 -5 -4 -3 -2 -1 +6 7
0 +1 +2 +3 +4 +5 +6 7
Die unterstrichenen Zahlen ist der gewählte Teilstring welcher nach den oberen genannten Regeln sortiert wird. Die fetten Zahlen sind jene, die im letzten Sortierung-Schritt verändert wurden. Das + Zeichen vor den positiven Zahlen ist nur für die Formatierung hier im Forum angegeben.