|   | 
 
 
 
|  
 Selection Sort - Turbo Pascal
 |  | 
Aufgabe
 Sortieren durch direkte Auswahl.
 Eine einfache Sortiermethode für kleine und da jedes Element nur einmal
  bewegt wird auch für sehr große Dateien. Die meiste Zeit wird dafür
  benötigt, das kleinste Element zu finden.
 Benötigt N²/2 Vergleiche und N Austauschoperationen.
 
 Das kleinste Element wird gesucht und gegen das Element an erster Stelle
  ausgetauscht, danach wird das zweitkleinste Element gesucht und gegen das
  Element an zweiter Stelle getauscht und fahre so fort bis das gesamte Feld
  sortiert ist.
 
 
Struktogramm
 
  
 
Quellcode
 { Funktion: Selection-Sort, sortieren durch direkte Auswahl
 Autor   : DG1XPZ
 Sprache : Turbo Pascal 7.0}
 program select;
 
 type zahlenArray = array[0..9] of integer;
 const zahlen: zahlenArray=(9,5,8,6,3,7,4,0,1,2);
 
 procedure sort;
 var laenge,i,j,min,temp: Integer;
 begin
 laenge:=SizeOf(zahlen) div SizeOf(zahlen[0])-1;
 for i:=0 to laenge-1 do
 begin
 min:=i;
 for j:=i+1 to laenge do
 begin
 if zahlen[j] < zahlen[min] then
 begin
 min:=j;
 end;
 end;
 temp:=zahlen[min];
 zahlen[min]:=zahlen[i];
 zahlen[i]:=temp;
 end;
 end;
 
 procedure ausgabe(z: zahlenArray);
 var
  i: Integer;
 begin
 for i:=0 to (SizeOf(zahlen) div SizeOf(zahlen[0]))-1 do
 begin
 write(z[i]);
 write(',');
 end;
 write('\b \n');;
 end;
 
 begin
 sort;
 writeln('Sortiert:');
 ausgabe(zahlen);
 end.
 
 
Download select.pas
 
 |  | 
    |  |