3 Strings sortieren
-
Ok das ist jetzt vielleicht eine blöde Frage, aber wie stelle ich es am geschicktesten an 3 char-Strings von Hand zu sortieren ?
Also als Beispiel wenn ich folgende 3 Strins (in einem char-Array habe):haus
hallo
daDann will ich folgendes ausgeben:
da
hallo
hausWichtig ist mir halt nur, dass man solange weitervergleicht wie die Zeichen gleich sind (siehe z.b. hallo und haus). Groß/Kleinschreibung ist unwichtig. Ich will da jetzt auch keinen komplexen Sortieralgo haben, sonden einfach nur den Ansatz wissen..
Danke schön
-
zwei strings kannst du mit strcmp() vergleichen
3 Werte "per Hand" sortieren:
if(a2 > a3) swap(a2, a3);
if(a1 > a2) swap(a1, a2);
if(a2 > a3) swap(a2, a3);swap heißt, die beiden werten werden vertauscht.
-
Aso dasa hatte ich vergessen. Ich will das natürlich ohne irgendwelche Funktionen aus string.h oder so machen, sondern eben nur per Hand. Sosnt wärs ja nicht schwer.
-
Dummkopf schrieb:
Sosnt wärs ja nicht schwer.
und wieso hast du dann gefragt wie man sortiert?
String-Vergleich ist auch nicht schwer: Einfach fortlaufend jedes Zeichen von A mit dem Zeichen derselben Stelle in B vergleichen, bis ein Unterschied auftritt. Jenachdem welches Zeichen größer/kleiner ist, sind es auch die Zeichenketten.
-
Dabei an die Sonderzeichen wie Umlaute denken.