Sortierverfahren
-
Wäre dir sehr dankbar wenn du mir nochmals helfen könntest

//feld anlegen char** feld= new (char*)[anzahl];error C2143: Syntaxfehler : Fehlendes ';' vor '['
error C2143: Syntaxfehler : Fehlendes ';' vor '['void insertionSort(int numbers[], int array_size) { int i, j, index; for (i=1; i < array_size; i++) { index = numbers[i]; j = i; while ((j > 0) && (numbers[j-1] > index)) { numbers[j] = numbers[j-1]; j = j - 1; } numbers[j] = index; } }//blitzschnell sortieren sort(feld, feld+anzahl, StrLess);error C2275: "StrLess" : Ungültige Verwendung dieses Typs als Ausdruck
Wie müsste ich nun die Sort Funktion umschreiben, damit es funktioniert?
(meine Vorschläge kommen gleich)insertionSort(feld, feld+anzahl, StrLess);Warum wird hier feld + anzahl gerechnet?

Wäre dir sehr dankbar...irgendwie fehlt es mir an der Logik

-
Hab zwar nicht alles gelesen, aber du scheinst Probleme mit dem Quicksort zu haben, ich hätte dir ein kleines Template das ich momentan verwende.
Und schau doch mal hier
allerdings hat da das Quicksort bei mir nicht funktioniert, aber erklärt ist es nicht schlecht.
-
Hallo,
Danke - Quicksort funktioniert jedoch schon, aber mit InterationSort gibts probleme - siehe letzten Post oben von mir ...
-
Hallo
ist es möclich eine einfach verkettete Liste mit einem Array(Mehrdimensional) zu vergleichen?// // EVL - String - Char // typedef struct LISTELEMENT_CHAR{ char *data; struct LISTELEMENT_CHAR *next; }ListElement_char;void insertionSort(char **string, int array_size) { int i, j; char *index = NULL; for (i=1; i < array_size; i++) { strcpy(index, string[i]); //index[0] = string[i]; j = i; while ((j > 0) && (strcmp(string[j-1], index))) { strcpy(string[j], string[j-1]); //string[j] = string[j-1]; j = j - 1; } strcpy(string[j], index); //string[j] = index; } }Wie jedoch sollte der Aufruf lauten?
insertionSort(temp_char->data, counter);Denke nicht das es möglich ist, oder?
Wie sollte ich es sonst vergleichen?Danke