Γενικό Λύκειο > Ταξινόμηση

ΕΡΩΤΗΣΗ - ΑΝΤΙΜΕΤΑΘΕΣΗ ΤΙΜΩΝ

(1/1)

ΑΝΔΡΕΑΣ:
Θα ηθελα να κανω μια ερωτηση.Ποια η διαφορα των δυο πιο κατω δομών;

!στον αλγόριθμο φυσαλίδας

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

Μπορούν και οι δυο να χρησιμοποιηθουν στη φυσαλίδα(είτε αυξουσα ειτε φθινουσα);
Ευχαριστώ.




P.Tsiotakis:

Καμία διαφορά, έχουν ακριβώς το ίδιο αποτέλεσμα (και με ένα παραδειγματάκι το επαληθεύουμε)

Δεν πρέπει βέβαια, να ξεχνάμε οτι η μεταβλητή temp και ο πίνακας είναι του ιδίου τύπου π.χ. αριθμητικές (αν θέλουμε να αντιμεταθέσουμε και τα στοιχεία αλφαριθμητικού πίνακα, πρέπει να πάρουμε άλλη βοηθητική μεταβλητή)

Με εκτίμηση,

EleniK:
Και οι δυο περιπτώσεις είναι σωστές. Η διαφορά τους είναι ότι στον πάνω αλγόριθμο, το από κάτω στοιχείο πρώτα καταχωρείται στην μεταβλητρή temp, ενώ στη δεύτερη περίπτωση το από πάνω στοιχείο καταχωρείται πρώτα στην temp. Είναι όπως το να ανταλλάσεις τις θέσεις δυο τιμών, δεν έχει σημασία ποια θα 'κουνήσεις' πρώτη. Οι ΄κινήσεις είναι κυκλικές , οπότε το αποτέλεσμα το ίδιο.

Το αύξουσα καθορίζεται από το Αν. Αν Α[ξ]<Α[ξ-1], ενώ το φθίνουσα είναι Α[ξ]>Α[ξ-1]

Πλοήγηση

[0] Λίστα μηνυμάτων

Μετάβαση στην πλήρη έκδοση