Programmierung

Selection Sort - C++


 
  1. 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.

  2. Struktogramm

    Selection-Sort

  3. Quellcode

    #include<iostream.h>
    // Funktion: Selection-Sort, sortieren durch direkte Auswahl
    // Autor : DG1XPZ
    // Sprache : Borland C++ V5.0

    int zahlen[] = {9,5,8,6,3,7,4,0,1,2}; /* Zahlenarray */
    void sort(int zahlen[]);
    int i,j,min,laenge,temp;

    main(){
       laenge=sizeof(zahlen)/sizeof(zahlen[0]);
       cout<<"Unsortiert: ";
       for(i=0;i<laenge;i++){
          cout<<zahlen[i]<<",";
       }
       cout<<"\b \n";
       sort(zahlen);
       cout<<"Sortiert : ";
       for(i=0;i<laenge;i++){
          cout<<zahlen[i]<<",";
       }
       cout<<"\b \n";
    }

    void sort(int z[]){
       for (i=0;i<laenge-1;i++){
          min=i;
          for (j=i+1;j<laenge;j++){
             if (z[j]<z[min]){
                min=j;
             }
          }
          temp=z[min];
          z[min]=z[i];
          z[i]=temp;
       }
    }

  4. Download select.zip

 

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

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