Programmierung

Bubble Sort - JavaScript


 
  1. Aufgabe

    Sortieren durch Tauschen von zwei nebeneinander liegenden Elementen.
    Obwohl Bubble-Sort eine Abart von Selection-Sort ist, werden mehr Tauschvorgänge durchgeführt um jedes Element an seinen Platz zu bringen.
    Benötigt N²/2 Vergleiche und N²/2 Austauschoperationen.

    Die ersten beiden Elemente werden verglichen. Ist das zweite Element kleiner, werden die Elemente getauscht.  (2,7),1,5,6,... 
    Dann werden die nächsten beiden Elemente verglichen bis zum Ende. 2,(7,1),5,6
    Danach beginnt die Prozedur von vorne bis keine Elemente mehr getauscht werden müssen.

  2. Struktogramm

    Bubble-Sort

  3. Programm




  4. Quellcode

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
      <title>
    DG1XPZ - JavaScript-Programmierung, Bubble-Sort</title>
      <script language=JavaScript>
     
    <!--
      function bubble( ){
         var i=0;
         var j=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++){ 
            for(j=1;j<sortArray.length;j++){
               if(eval(sortArray[j - 1])>eval(sortArray[j])){
                  temp=sortArray[j - 1];           // z[i] mit z[j] tauschen
                  sortArray[j - 1]=sortArray[j];  // -"-
                  sortArray[j]=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=
    bubble( ) value="algorithmus">sortieren</button><br>
    <input name=
    ausgabe1 size="67">
    </form>
    </td></tr></table>
    </body>
    </html>


  5. Download bubble.html (Rechts-Click, speichern unter)

 

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

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