Bubblesort Verfahren - Was bedeutet n=N-1?



  • Hallo,
    habe folgendes Problem,bin noch C++ Anfänger und komme mit dem Bubblesort Verfahren nicht zurecht.
    Ich habe das Arbeitsblatt mal für euch eingescannt,meine Problem habe ich rot markiert. Den Rest verstehe ich wunderbar,nur das mit dem n=n-1 etc. nicht.
    Hoffe ihr könnt mir helfen,ist wirklich wichtig.
    Danke,

    MfG Markus

    http://www.markus-lerchen.de/lastscankopie.jpg

    P.S.: Das Bild einfach runterladen und mit der Windows Bildanzeige anschauen,weil es im Browser etwas groß angezeigt werden kann



  • hallo

    das erste ist

    n= N-1; bedeutet, dass von einer gegebenen anzahl, also N elemente in der variablen n die anzahl minus eins als startwert abgespeichert wird.

    das zweite ist

    n= n-1; bedeutet das runterzählen von n in der schleife.

    sag deinem lehrer/dozenten mal, er soll euch "int main" (den standard) beibringen. und seine skripte überarbeiten... *g*, musst ich vor vielen jahren auch machen, und hat nicht geschadet ... 😉

    ps: hier nochmal eine der vielen beschreibungen von bubblesort
    http://liebknecht-gymnasium.bei.t-online.de/sort/html-Seiten/Bubblesort.html
    (war die erste..)
    damit klar wird, warum du mit einem element weniger anfängst in n
    6 elemente, 5 durchläufe



  • *lol*
    Rot markieren kommt gut in einer S/W Kopie 😉

    Das n=n-1 heißt, dass die Elemente ja "aufsteigen" also das größte Element nach dem ersten Durchlauf ganz am Ende steht.
    Daher brauchst du im nächsten Durchlauf jeweils ein Element mehr hinten nicht betrachten, da die ja schon richtig liegen.



  • Hallo,
    erstmal danke für eure schnellen Antworten 🙂
    Was ich aber immer nochnicht weiss ist,was ich mit denen anstellen soll... Muss ich die beachten?
    Die zweite Zeile sieht doch so aus,oder?
    5 6 3 1

    P.S.: Was bedeutet eigentlich N? sind das die Zahlen in der Tabelle unten oder wie?



  • mein konkretes Problem ist einfach:

    Ich weiss nicht,das "n=N-1" bedeutet...elise hat das zwar schön erklärt,nur ist das viel zu kompliziert für mich geschrieben 😞
    dann was unten steht "solange i<n" und n=n-1
    ich versteh die 3 Sachen nicht in zusammenhang mit dem rest und der tabelle unten



  • hi,

    das N gibt ja die Anzahl der zu sortierenden Elemente an, also setzt man n auf N-1, da man beim ersten Durchlauf vom ersten bis zum vorletzten Element, dieses mit seinem Nachfolger vergleicht. Das passiert indem du i bei jedem Schleifendurchlauf um eins erhöhst und das solange machst, bis i=n ist.
    Das runterzählen von n macht man deshalb, weil nach dem ersten Durchlauf das letzte Element schon das größte ist, man muss es also nicht mehr sortieren und kann es deshalb außer Acht lassen. Genauso ist das bei allen weiteren Durchläufen.

    Ich hoffe ich konnte dir helfen...


Anmelden zum Antworten