Nachdem ich im vorherigen Beitrag den Bubble Sort Algorithmus verwendet habe, muss ich für die nächste Übung den Selection Sort Algorithmus verwenden. Hierbei wird in einem Array (in meinem Code mit 8 Elementen) das kleinste Element gesucht und an die erste Stelle gesetzt. Danach wird aus den verbleibenden wieder das kleinste Element gesucht und an die zweite Stelle gesetzt. Dies geschieht bis alle Stellen gesetzt sind und somit das Array sortiert ist. Es gibt noch die Variante in der man das selbe mit der grössten Zahl macht, ebenso kann man parallel mit der kleinsten und grössten arbeiten und dann diese zusammenfügen. Ich beschäftige mich nun momentan nicht mehr weiter mit diesem Algorithmus sondern wende mich dem nächsten und wahrscheinlich auch schwierigsten zu, dem Insertion Sort.
Auch dieses mal gibts den C++ Code vom Selection Sort Algorithmus unter dem Link „Weiterlesen“.

/*
* Titel: Selection Sort
* Aufgabe: 25_2
* Datei: main.cpp
*
* Erstellt am: 14.04.2009
* Autor: Moritz
*/

#include
using namespace std;

// Selectionsort Algorithmus
void sortierung(int *array) {
int min;
int b;

for (int a = 0; a < 8 - 1; a++) { b = a; min = array[b]; for (int j = a + 1; j < 8; j++) { if (array[j] < min) { b = j; min = array[b]; } } array[b] = array[a]; array[a] = min; } } // Hauptprogramm int main() { int nummer[8]; // Eingabe der Zahlen cout << "Bitte geben Sie acht Zahlen ein:" << endl; for (int y = 0; y < 8; y++) { cout << y + 1 << ". "; cin >> nummer[y];
}

// Ausgabe der unsortierten Zahlen
cout << "Die Zahlen vor der Sortierung:" << endl; for (int h = 0; h < 8; h++) cout << nummer[h] << " "; // Aufruf der Sortierung und Übergabe des Arrays sortierung(nummer); // Ausgabe der sortierten Zahlen cout << endl << "Die Zahlen nach der Sortierung:" << endl; for (int h = 0; h < 8; h++) cout << nummer[h] << " "; }