Bubblesort und der Programmablaufplan



  • Hi Leute!

    Ich soll zum Bubblesort-Algorithmus ein PAP schreiben. Mein bisheriges Ergebnis seht ihr unten im Bild. Meine Frage: Wenn ich die Zahl1[i]>Zahl2[i+1] verglichen habe und diese "Entscheidung" zu trifft, dann gehe ich in dem "Nein-Zweig" weiter. Hier setze ich nun G=K; ich ersetze quasi die Zahl in G mit der Zahl in K. Danach zähle ich den Zähler mit i=i+1 eins hoch und gehe vor den Entscheidungsblock und ziehe das gleich wieder durch. Im "Ja-Zweig" gehe ich ähnlich vor nur setze ich eben G nicht gleich K weil ich ja nicht vertauschen muss.

    Wie bring ich nun dem Bubblesort aber bei wann er aufhören muss? Das check ich grad gar nicht... Könnt ihr mir hier vielleicht weiterhelfen?

    Hier der link zu meinem PAP: http://yfrog.com/e4unbenanntlcj

    Hier nochmal das was ich über Bubblesort im Allgemeinen weiß:

    Den Ablauf des Bubblesorts hab ich soweit eigentlich verstanden: Vergleiche die Zahl ganz links mit der darauffolgenden rechten und vertausche die beiden Zahl falls die rechte davon kleiner als die linke ist...

    Anfang 1. Durchlauf:
    3 7 2 5 8 | vergleiche 3 mit 7
    3 7 2 5 8 | vergleiche 7 mit 2; 2<7 es folgt: Vertauschung
    3 2 7 5 8 | vergleiche 7 mit 5; 5<7 es folgt: Vertauschung
    3 2 5 7 8 | vergleiche 7 mit 8; 7<8 es folgt: keine Vertauschung
    Ende 1. Durchlauf

    Anfang 2. Durchlauf:
    3 2 5 7 8 | vergleiche 3 mit 2; 2<3 es folgt: Vertauschung
    2 3 5 7 8 | vergleiche 3 mit 5; 3<5 es folgt: keine Vertauschung
    2 3 5 7 8 | vergleiche 5 mit 7; 5<7 es folgt: keine Vertauschung
    2 3 5 7 8 | vergleiche 7 mit 8; 7<8 es folgt: keine Vertauschung
    Ende 2. Durchlauf es folgt: fertig Sortiert...

    Danke!



  • Zwei Beobachtungen:

    1. Das Sortieren eines Feldes der Größe n braucht maximal n Durchläufe.
    2. Wenn es nichts mehr zu sortieren gibt, dann ist man fertig.


Anmelden zum Antworten