Lexikographische Ordnung über ein vorgegebenes Alphabet

Smokers

Grünschnabel
Ich habe folgendes Problem, ich habe einen Algorithmus der aus einem vorgegebenen Alphabet A, das über eine Eingabe gesetzt wird, zufällig lange Zeichenketten erzeugt.
Diese sollen dann über das gegebene Alphabet sortiert werden.

Ich bin an dem Punkt an dem ich den zufälligen Zeichenketten, also den Buchstaben darin, Zahlen zuweise, damit sie sich per bubble_sort sortieren lassen können.

Ich habe ein Problem mit der Ausgabe des neuen Arrays, das die Zahlen(die index-werte) enthält.
hier der betreffende code....
Code:
wegen code klau erstmal weg =)
man is nirgendwo vor kommolitonen sicher
}
 
Zuletzt bearbeitet:
Bei den Ausrufezeichen weiß ich einfach nicht wie ich die Anzahl der Elemente des Arrays test_zks_int[ i ] herausfinden soll....
Die Länge von Zeichenketten (wenn sie mit \0 terminiert sind?!) kannst du mit strlen herausfinden.

Ansonsten kannst du diese Information nicht ermitteln. Du mußt diese Information immer zusammen mit dem Array speichern und übergeben.

Außerdem ist dir bewußt, das es bereits verschiedene Sortieralgorithmen in C gibt?

Gruß
 
Die Länge von Zeichenketten (wenn sie mit \0 terminiert sind?!) kannst du mit strlen herausfinden.

Ansonsten kannst du diese Information nicht ermitteln. Du mußt diese Information immer zusammen mit dem Array speichern und übergeben.

Außerdem ist dir bewußt, das es bereits verschiedene Sortieralgorithmen in C gibt?

Gruß

Wenn du damit auf strcmp anspielen wilslt , sieht du leider nicht was der alogrithmus macht,.... ^^
ich gebe ein Alphabet VOR,...
d.h. das Alphabet muss sich nicht mit unserem decken,.. zB sind auch Alphabete wie {2,r,i,a,v,8,1,!,a} gestattet, daraus wird dann eine random zeichenkette erstellt. und diese soll nach dem angegebenen Alphabet sortiert werden.
Wenn ich mich irre verbesser mich, aber soetwas gibt es glaube ich nicht als funktion....

und wie du siehst meine ich INT arrays die mit calloc allokiert wurden
 
Zuletzt bearbeitet:
Wenn du damit auf strcmp anspielen wilslt , sieht du leider nicht was der alogrithmus macht,.... ^^
ich gebe ein Alphabet VOR,...
strcmp ist kein Sortieralgorithmus. Ich spiele auf qsort, heapsort und mergesort an. \edit: nur qsort gehört zu Standard C.

Diese Funktionen sind generisch, d.h. man kann dort angeben nach welchem Kriterium sortiert werden soll.

Gruß
 
Zuletzt bearbeitet:
mhh okay,... die Funktion kenn ich wirklich nicht.
Gute frage ob ich die noch auf mein Programm angepasst bekomme, schließlich muss ich bald abgeben, aber danke für den tipp .. vllt mach ich noch ne version 2 wenn mir langweilig ist.

Ich bin da obige problem umgangen indem ich noch eine variable erstellt habe die die zufällig generierte anzahl an elementen speichert.

doof, aber was solls....
danker erstmal trotzdem
 
Zurück