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
Programm
Quellcode
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>DG1XPZ - JavaScript-Programmierung, Selection-Sort</title>
<script language=JavaScript>
<!--
function select( ){
var i=0;
var j=0;
var min=0;
var temp=0;
var sortArray=new Array();
var ergebnis="";
for
(i=0;i<document.algorithmus.eingabe1.length;i++){
sortArray[i]=document.algorithmus.eingabe1[i].value;
}
for(i=0;i<sortArray.length-1;i++){
min=i;
for
(j=i+1;j<sortArray.length;j++){
if(eval(sortArray[j])<eval(sortArray[min])){
min=j;
}
}
temp=sortArray[min];
sortArray[min]=sortArray[i];
sortArray[i]=temp;
}
//Ausgabe vorbereiten
for (i=0;i<sortArray.length;i++){
ergebnis=ergebnis+sortArray[i]+",";
}
document.algorithmus.ausgabe1.value=ergebnis;
}
//-->
</script>
</head>
<body>
<table height="78" width="476"><tr><td
align=center height="74"
width="468">
<form action="" method=post
name=algorithmus target="">
<input name=eingabe1 value=9
size=3><input name=eingabe1
value=5 size=3><input
name=eingabe1 value=8
size=3>
<input name=eingabe1 value=6
size=3><input name=eingabe1
value=3 size=3><input
name=eingabe1 value=7
size=3>
<input name=eingabe1 value=4
size=3><input name=eingabe1
value=0 size=3><input
name=eingabe1 value=1
size=3>
<input name=eingabe1 value=2
size=3><br>
<button onclick=select( ) value="algorithmus">sortieren</button><br>
<input name=ausgabe1 size="67">
</form>
</td></tr></table>
</body>
</html>