Radix-Sortierung auf einem Array von Zeichenfolgen?

Ich habe recherchiert und obwohl ich die allgemeine Idee gefunden habe, mit Radix Sort eine Reihe von Zeichenfolgen zu alphabetisieren, weiß ich, dass ich in die falsche Richtung gehe.

Das habe ich bisher:

void radixSort(string* sortMe, int l)
{
    queue<string>* sections = new queue<string>[27];    //Have a-z, and also one for strings that are null terminated.
    for(int i = 0; i < numElements; i++)
    {
        if(!(sortMe[i][l] == 32))
            sections[sortMe[i][l]-96].push(sortMe[i]);      //-96 because the ascii code for a is 97. If, for example a is the character, it will be placed at 1. 0 is left for null characters
    }

    for(int i =0; i < 26; i++)
    {
        while(!sections[i].empty())
        {
            temp.push_back(sections[i].front());
            sections[i].pop();
        }
    }
}

Was ich bisher habe, sortiert alle Zeichenfolgen nach dem ersten Zeichen, und ich weiß, dass ich dann die verbleibenden Zeichen in Unterfeldern sortieren und sortieren muss, aber wie kann ich dies effizient implementieren? Die Zeichenfolgen haben eine variable Größe und können Leerzeichen enthalten. Beispiel:

unterteiltHauptstraßeHoseaufgespießt Entkolonialisierungtonangebendaxiale ZufriedenheittemperamentvollÜberempfindlichkeitBärenHaarbreitenCremes WellenarbeitslosbetrunkenerfehlerhaftesteMauretanerEmanatorenanerkennendzouaves dishpanlatschenSolarismenVergütunglöslich machendgemeißeltjugularBenommenheitToastierBaudangefügtMachtlose Gezeitendisassimiliertschnappt nach Luftflirtenuh

Dies ist etwas, was ich gefunden habe und anscheinend von Nutzen sein wird:http://algs4.cs.princeton.edu/lectures/51DemoKeyIndexedCounting.pdf

Antworten auf die Frage(2)

Ihre Antwort auf die Frage