|
Selection Sort - C++
|
- 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
#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;
}
}
- Download select.zip
|
|
|