Radixsort selbst schreiben. Komme nicht weiter



  • Hallo,

    ich möchte Radixsort für ASCII-Ziffern-Arrays (Zahlen) mit drei Stellen in C selbst schreiben. Habe erstmal angefangen mit einer groben Struktur:

    #include <stdio.h>
    #include <string.h>
    
    void main(void)
    {
    	char c, 
    		 unsort[6][3], 
    		 boxes[10][6][3];
    	int n,m,k;
    
    /**Einlesen**/
    	for(m=0; m<6; m++)
    		for(n=0;n<3;n++)
    		{
    			printf("\nBitte geben sie %dte Ziffer der %dten Zahl ein:\n", n+1,m+1);
    			if((c=getchar())>47&&c<58)
    				unsort[m][n]=c;
    		}
    
    			for(n=0;n<3;n++) //Stelle inkrementieren
    			{
    				for(m=0;m<6;m++) //Wort inkrementieren
    				{
    					for(k=0;k<10;k++) //Alphabet bzw. Totalordnung abfahren
    					{
    						if(unsort[m][n]==k+48)
    							strcpy(boxes[k][m], unsort[m]);
    
    					}
    				}
    			}
    return 0;
    }'
    

    Verzeiht bitte meine Anfängerfehler. Nun, habe ich im Internet nach Lösungen geschaut, aber nur folgendes gefunden: http://www.dreamincode.net/code/snippet2030.htm
    Leider versteh ich da den Hauptteil von radixsort nicht und 2. haben bei ihm die zu ordnenden Wörter nur die Länge 1 (eindimensionales Array a[i])

    Habt ihr vielleicht ne Hilfestellung für mich, damit ich weitermachen kann?

    MfG


Anmelden zum Antworten