Τώρα είναι Πέμ 28 Μαρ 2024 03:07 pm

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]




Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 1 Δημοσίευση ] 
Συγγραφέας Μήνυμα
 Θέμα δημοσίευσης: Ταξινόμηση Εισαγωγής
ΔημοσίευσηΔημοσιεύτηκε: Τετ 19 Μάιος 2004 02:02 pm 
Χωρίς σύνδεση

Εγγραφή: Πέμ 22 Απρ 2004 11:16 am
Δημοσιεύσεις: 60
Τοποθεσία: Θεσσαλονίκη
Syntax: [ Download ] [ Hide ]
! ========================================================================================================================
! Έστω ότι θέλουμε να διατάξουμε τους μαθητές μίας τάξης κατά φθίνουσα σειρά ύψους.
! H τεχνική που θα ακολουθήσουμε είναι η εξής. Αρχικά, τοποθετούμε τους μαθητές σε μία τυχαία σειρά.
! Κατόπιν συγκρίνουμε το δεύτερο με τον πρώτο και αν χρειασθεί τους αντιμεταθέτουμε ώστε πρώτος να είναι o ψηλότερος.
! Στη συνέχεια θεωρούμε τον τρίτο και τον τοποθετούμε στη σωστή σειρά σε σχέση με τον πρώτο και το δεύτερο.
! Κατα αυτόν τον τρόπο συνεχίζουμε μέχρι να τοποθετήσουμε στη σωστή σειρά όλους τους μαθητές.
! Να σχεδιασθεί ένας αλγόριθμος που να υλοποιεί αυτή τη μέθοδο ταξινόμησης.
! (Δραστηριότητα ΔΣ3, από το σχολικό ΤΕΤΡΑΔΙΟ του ΜΑΘΗΤΗ, σελιδα 34, κεφ. 3, Δομές Δεδομένων και Αλγόριθμοι)
!
! (Ανάλογο είναι το Παράδειγμα Π1, από το σχολικό ΤΕΤΡΑΔΙΟ του ΜΑΘΗΤΗ, σελιδα 37, κεφ. 4, Τεχνικές σχεδίασης Αλγορίθμων)
! ========================================================================================================================

ΠΡΟΓΡΑΜΜΑ Ταξινόμηση_Εισαγωγής_Insertion_Short_Φθίνουσα
ΣΤΑΘΕΡΕΣ
  N=20
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i,j,A[N],max,επ ,θ
ΑΡΧΗ

  ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ N  !ενδιαφερον παρουσιάζει η αλλαγή της παρούσας συνάρτησης πχ με την προσθήκη+ΤΥΧΑΙΟΣ(i)
    A[i] <-- 24+ i + Α_Μ ((-1)^i)-2*i
    ΓΡΑΨΕ_ A[I],' '
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ

  επ <-- 0
            ! η ταξινόμηση αυτή είναι αρκετά γρήγορη (πιο γρήγορη από την απλή φυσσαλίδα)
            ! αν ο πίνακας είναι "περίπου ταξινομημένος"
            ! στατιστικά όμως παραμένει πιο "αργή" όμως από την "γρήγορη φυσσαλίδα"
  ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ N
    max <-- A[i]
    A[1] <-- max
    j <-- i-1
    ΟΣΟ max>A[j] ΕΠΑΝΑΛΑΒΕ
      A[j+1] <-- A[j]
      j <-- j-1
      επ <-- επ+1
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    A[j+1] <-- max
    επ <-- επ+1
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ N
    ΓΡΑΨΕ_ A[i],' '
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΡΑΨΕ
  ΓΡΑΨΕ επ, ' επαναλήψεις'

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
 


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
Τελευταίες δημοσιεύσεις:  Ταξινόμηση ανά  
Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 1 Δημοσίευση ] 

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]


Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 3 επισκέπτες


Δεν μπορείτε να δημοσιεύετε νέα θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να απαντάτε σε θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επεξεργάζεστε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να διαγράφετε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επισυνάπτετε αρχεία σε αυτή τη Δ. Συζήτηση

Αναζήτηση για:
Μετάβαση σε:  
Προβολές: