Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Γ΄ Λυκείου => Μήνυμα ξεκίνησε από: jgalano στις 25 Απρ 2009, 05:22:22 ΜΜ

Τίτλος: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: jgalano στις 25 Απρ 2009, 05:22:22 ΜΜ
Ανεβάζω ένα σενάριο συγχώνευσης και ταυτόχρονα ένα πρόβλήμα στο οποίο εμφανίζεται με αυτό τον τρόπο. Για τυχόν σχόλια-παρατηρήσεις-λάθη στείλτε μήνυμα.
Τίτλος: Απ: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: evry στις 25 Απρ 2009, 07:08:36 ΜΜ
Νομίζω ότι στον δεύτερο τρόπο στην περίπτωση που Α[ι]=B[j] θα πρέπει να αντιγράψεις ένα από τα δύο στον τρίτο πίνακα Γ.
Δες τις εντολές που έχω προσθέσει παρακάτω

Κώδικας [Επιλογή]

Όσο i<=N KAI j<=M Επανάλαβε
Αν Α[i]<B[j] τότε
Γ[k]<- A[i]
i <- i + 1
k <- k +1
Αλλιώς_Αν Α[i]>B[j] τότε
Γ[k] <- Β[j]
j <- j + 1
k <- k +1
Αλλιώς
      Γ[k]<- A[i]                ! προσθήκη 1
k <- k +1                  ! προσθήκη 2

i <- i + 1
j <- j + 1
Τέλος_Αν
Τέλος_Επανάληψης
Τίτλος: Απ: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: P.Tsiotakis στις 25 Απρ 2009, 07:53:31 ΜΜ
Τυπικά βέβαια, αυτό δεν είναι συγχώνευση καθώς ο τελικός πίνακας έχει λιγότερα στοιχεία απο τους 2 αρχικούς
Τίτλος: Απ: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: jgalano στις 25 Απρ 2009, 08:02:57 ΜΜ
evry, πιστεύω ότι έχεις δίκιο. Μου διέφυγε. Η αλλαγή έγινε και μπορείτε να ξανακατεβάσετε το σωστό. Ευχαριστώ για τη διόρθωση.
Τίτλος: Απ: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: evry στις 25 Απρ 2009, 08:04:33 ΜΜ
Θα μπορούσε να θεωρηθεί σαν συγχώνευση συνόλων στα οποία ορίζεται κάποιου είδους διάταξη και από πίσω υλοποιούνται με πίνακες (π.χ. οι σχέσεις στην SQL που έχουν μοναδικό κλειδί) αλλά αυτό πάει μακριά
Τίτλος: Απ: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: jgalano στις 25 Απρ 2009, 08:15:25 ΜΜ
Παναγιώτη, έχεις δίκιο αλλά η διαδικασία που ακολουθείται όμως είναι η ίδια. Στο περσινό  4ο των επαναληπτικών(110μ με εμπόδια), ο πίνακας που δημιουργείται είναι 8 θέσεων και όχι 16, παρόλα αυτά συγχώνευση το βαφτίσαμε.
https://alkisg.mysch.gr/steki/index.php?topic=1824.msg13191#msg13191
Ευχαριστώ πολύ για το σχόλιο.
Τίτλος: Απ: ΣΥΓΧΩΝΕΥΣΗ
Αποστολή από: evry στις 25 Απρ 2009, 08:34:21 ΜΜ

  Όχι δεν είναι το ίδιο. Στο θέμα αυτό ο Παναγιώτης έχει δίκιο διότι στο δικό σου πρόβλημα αν κάποια τιμή εμφανίζεται και στους δύο πίνακες τότε στον τελικό θα εμφανιστεί μόνο μια φορά. Αντίθετα στην περίπτωση των ημιτελικών δεν ισχύει το ίδιο αφού δεν υπάρχει αθλητής που να τρέχει και στους δύο ημιτελικούς. Αυτός είναι ακριβώς ο ορισμός της συγχώνευσης απλά δεν είσαι υποχρεωμένος να κάνεις όλα τα βήματα. Αρκεί να κάνεις μόνο 6 επαναλήψεις. Οι εντολές όμως μέσα στον βρόχο είναι ακριβώς οι ίδιες σε αντίθεση με τον δικό σου αλγόριθμο.
   Δες το και αλλιώς, είναι σαν να κάνεις κανονικά την συγχώνευση και στη συνέχεια να εμφανίζεις μόνο τους πρώτους 6

Παράθεση από: jgalano στις 25 Απρ 2009, 08:15:25 ΜΜ
Παναγιώτη, έχεις δίκιο αλλά η διαδικασία που ακολουθείται όμως είναι η ίδια. Στο περσινό  4ο των επαναληπτικών(110μ με εμπόδια), ο πίνακας που δημιουργείται είναι 8 θέσεων και όχι 16, παρόλα αυτά συγχώνευση το βαφτίσαμε.
https://alkisg.mysch.gr/steki/index.php?topic=1824.msg13191#msg13191
Ευχαριστώ πολύ για το σχόλιο.