Α.Ε.Π.Π. ΟΠΤΙΚΟΠΟΙΗΜΕΝΗ ΠΑΡΟΥΣΙΑΣΗ ΤΗΣ ΤΑΞΙΝΟΜΗΣΗΣ ΠΙΝΑΚΑ ΜΕ ΤΗ ΜΕΘΟΔΟ ΤΗΣ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) ΙΟΡΔΑΝΗΣ ΣΑΒΒΟΥΛΙΔΗΣ
Πριν ξεκινήσουμε Υπάρχουν διάφορες εκδοχές της ταξινόμησης με τη μέθοδο της φυσσαλίδας, ανάλογα με την κατεύθυνση της σάρωσης του πίνακα και του τρόπου σύγκρισης των διαδοχικών στοιχείων Εδώ, χρησιμοποιείται η μέθοδος του βιβλίου Α.Ε.Π.Π., με μια μικρή παραλλαγή, ώστε να σταματά αμέσως μόλις ο πίνακας βρεθεί ταξινομημένος, πριν δηλαδή τελειώσουν όλες οι επαναλήψεις
ΤΑΞΙΝΟΜΗΣΗ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) j από 8 Εσωτερικός βρόχος μέχρι 2 j = i = 2 1 η σάρωση Εξωτερικός βρόχος Π Αρχική υπόθεση σε κάθε σάρωση Ταξινομη- μένος
ΤΑΞΙΝΟΜΗΣΗ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) μέχρι 3 j = i = 3 2 η σάρωση Εξωτερικός βρόχος j από 8 Εσωτερικός βρόχος Π Ταξινομη- μένος Αρχική υπόθεση σε κάθε σάρωση
ΤΑΞΙΝΟΜΗΣΗ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) μέχρι 4 j = i = 4 3 η σάρωση Εξωτερικός βρόχος j από 8 Εσωτερικός βρόχος Π Αρχική υπόθεση σε κάθε σάρωση Ταξινομη- μένος
ΤΑΞΙΝΟΜΗΣΗ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) μέχρι 5 j = i = 5 j από 8 Εσωτερικός βρόχος Ο πίνακας έχει ήδη ταξινομηθεί οπότε πρέπει να δώσουμε την ευκαιρία στη διαδικασία να τελειώσει ΑΜΕΣΑ. Μια τελευταία σάρωση χωρίς αντιμετάθεση, σημαίνει το τέλος της διαδικασίας. 4 η σάρωση Εξωτερικός βρόχος Π Αρχική υπόθεση σε κάθε σάρωση Ταξινομη- μένος
ΤΑΞΙΝΟΜΗΣΗ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) μέχρι 6 j = i = 6 j από 8 Εσωτερικός βρόχος Δεν έγινε καμία αντιμετάθεση. Η διαδικασία σταματά αμέσως και ο πίνακας είναι έτοιμος για χρήση 5 η σάρωση Εξωτερικός βρόχος Π Αρχική υπόθεση σε κάθε σάρωση Ταξινομη- μένος
ΜΕ ΑΠΛΑ ΛΟΓΙΑ Σε κάθε σάρωση του πίνακα από κάτω προς τα επάνω, αφού υποθέσουμε αρχικά ότι έχουμε ταξινομημένο πίνακα (σημαία επάνω), συγκρίνουμε το τρέχον στοιχείο (j) με το προηγούμενο (j-1) και αν χρειάζεται, τα αντιμεταθέτουμε. Ταυτόχρονα, σταματούμε να υποθέτουμε ότι ο πίνακας είναι ταξινομημένος, αφού μόλις έγινε κάποια αντιμετάθεση (κατεβάζουμε τη σημαία – λογική μεταβλητή) Στη σάρωση κατά την οποία δεν γίνει καμία αντιμετάθεση, η σημαία (λογική μεταβλητή), παραμένει ΑΛΗΘΗΣ, οπότε η διαδικασία πρέπει να σταματήσει. Έτσι αντιλαμβάνεται ο αλγόριθμος ότι ο πίνακας είναι ταξινομημένος. Αυτό το τρικ, μας γλυτώνει από τις υπόλοιπες σαρώσεις. Σε σχέση με την λύση του σχολικού βιβλίου, αυτό σημαίνει ότι, ο εξωτερικός βρόχος ΓΙΑ, πρέπει να αντικατασταθεί με την ΟΣΟ, η οποία εκτός από το μετρητή, θα κάνει χρήση και της λογικής μεταβλητής (σημαίας). Δε γλυτώνουμε τίποτε όμως, αν ο πίνακας τυχαίνει να είναι ταξινομημένος σε φθίνουσα σειρά, οπότε και γίνονται όλες οι σαρώσεις. ΙΟΡΔΑΝΗΣ ΣΑΒΒΟΥΛΙΔΗΣ