Θα ηθελα να κανω μια ερωτηση.Ποια η διαφορα των δυο πιο κατω δομών;
!στον αλγόριθμο φυσαλίδας
temp<- A[j]
A[j]<- A[j-1] ! Αντιμετάθεσε Α[J],A[J-1]
A[j-1]<-temp
και
temp<- A[j-1]
A[j-1]<- A[j] ! Αντιμετάθεσε Α[J-1],A[J]
A[j]<-temp
Μπορούν και οι δυο να χρησιμοποιηθουν στη φυσαλίδα(είτε αυξουσα ειτε φθινουσα);
Ευχαριστώ.
Καμία διαφορά, έχουν ακριβώς το ίδιο αποτέλεσμα (και με ένα παραδειγματάκι το επαληθεύουμε)
Δεν πρέπει βέβαια, να ξεχνάμε οτι η μεταβλητή temp και ο πίνακας είναι του ιδίου τύπου π.χ. αριθμητικές (αν θέλουμε να αντιμεταθέσουμε και τα στοιχεία αλφαριθμητικού πίνακα, πρέπει να πάρουμε άλλη βοηθητική μεταβλητή)
Με εκτίμηση,
Και οι δυο περιπτώσεις είναι σωστές. Η διαφορά τους είναι ότι στον πάνω αλγόριθμο, το από κάτω στοιχείο πρώτα καταχωρείται στην μεταβλητρή temp, ενώ στη δεύτερη περίπτωση το από πάνω στοιχείο καταχωρείται πρώτα στην temp. Είναι όπως το να ανταλλάσεις τις θέσεις δυο τιμών, δεν έχει σημασία ποια θα 'κουνήσεις' πρώτη. Οι ΄κινήσεις είναι κυκλικές , οπότε το αποτέλεσμα το ίδιο.
Το αύξουσα καθορίζεται από το Αν. Αν Α[ξ]<Α[ξ-1], ενώ το φθίνουσα είναι Α[ξ]>Α[ξ-1]