Programmierung

Insertion Sort - Turbo Pascal


 
  1. Aufgabe

    Sortieren durch direktes Einfügen.
    Dieser Suchalgorithmus ist genauso einfach wie Selection-Sort,  aber flexibler.
    Benötigt zwischen N²/4 und N²/2 Vergleiche und N²/8 und N²/4 Austauschoperationen.

    Das betrachtete Element (h) wird eingefügt, indem die größeren Elemente (a[ x ]) um eine Position nach rechts kopiert werden und das Element (h) auf dem frei gewordenen Platz (a[ j ]) eingefügt wird.

  2. Struktogramm

    Insertion-Sort

  3. Quellcode

    { Funktion: Insertion-Sort, sortieren durch direktes Einfügen
      Autor : DG1XPZ
      Sprache : Turbo Pascal 7.0}
    program insert;

    type zahlenArray = array[0..9] of integer;
    const zahlen: zahlenArray=(9,5,8,6,3,7,4,0,1,2);
    var m,n:integer;

    procedure sort;
    var laenge,i,j,h: Integer;
    begin
       laenge:=SizeOf(zahlen) div SizeOf(zahlen[0])-1;
       for i:=1 to laenge do
       begin
          h:=zahlen[i];
          j:=i;
          while zahlen[j-1]>h do
          begin
             zahlen[j]:=zahlen[j-1];
             j:=j-1;
             if j=0 then break;
          end;
          zahlen[j]:=h;
       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.

  4. Download insert.pas

 

http://www.counter-service.de http://www.counter-service.de

Home
uebermich
Programmierung
Amateurfunk
Elektronik
Download
Links
E-Mail
Gästebuch/Meckerecke
Counter-DG1XPZ