Implementierung

Der einfachheitshalber sei hier die betrachtete Datenmenge ein kontinuierlich zusammenhänger Speicherbereich, sprich ein Array. Analog funktioniert der Ansatz auf verketten Listen genauso. Der hier aufgelistete C Code relalisiert das Setzen und verfolgen durch eine äussere Schleife, wohingegen die innere schleife für das einreihen des Markenelements in die (vordere) sortierte Menge verantwortlich ist. ``data'' sei die Anfangsadresse der Datenmenge und ``num'' die Anzahl der Elemente in der Menge; diese beiden Informationen bekommt der InsertionSort vom Aufrufer.


\begin{listing}{1}
void insertion_sort( int * data, int num )
{
int i, j;
in...
...)
{
tmp = data[j];
data[j] = data[j-1];
data[j-1] = tmp;
}
} \end{listing}


Nächste Seite  Aufwärts  Vorherige Seite  Inhalt 


Nächste Seite: Optimierung Aufwärts: InsertionSort Vorherige Seite: Laufzeitkomplexität   Inhalt

2002-05-09