Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 8: ΧΡΗΣΗ ΔΟΜΩΝ ΔΕΝΤΡΟΥ ΚΑΙ ΣΩΡΟΥ ΓΙΑ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗΣ ΑΛΓΟΡΙΘΜΟΣ HEAPSORT

Σχετικά έγγραφα
Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΔΕΝΤΡΑ

Εισαγωγή στους Αλγορίθμους

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 6: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ: ΠΡΟΒΛΗΜΑ ΑΝΑΖΗΤΗΣΗΣ

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Εισαγωγή στους Αλγορίθμους

Διοικητική Λογιστική

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Εισαγωγή στους Αλγορίθμους

Κβαντική Επεξεργασία Πληροφορίας

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Κβαντική Επεξεργασία Πληροφορίας

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ

Εφαρμογές των Τεχνολογιών της Πληροφορίας και των Επικοινωνιών στη διδασκαλία και τη μάθηση

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Αλγόριθμοι και πολυπλοκότητα Συγχωνευτική Ταξινόμηση

Βάσεις Περιβαλλοντικών Δεδομένων

Εισαγωγή στη Δικτύωση Υπολογιστών

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Μυελού των Οστών Ενότητα #1: Ερωτήσεις κατανόησης και αυτόαξιολόγησης

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 3: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΓΡΑΦΗΜΑΤΑ

Εισαγωγή στους Υπολογιστές

Μηχανολογικό Σχέδιο Ι

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού Υπέρθερμου Ατμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Κβαντική Επεξεργασία Πληροφορίας

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 5: ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ-ΑΝΑΓΩΓΗ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Βέλτιστος Έλεγχος Συστημάτων

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 9: ΒΑΣΙΚΕΣ ΤΕΧΝΙΚΕΣ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΑΝΑΛΥΣΗΣ ΑΛΓΟΡΙΘΜΩΝ ΕΞΙΣΟΡΡΟΠΗΣΗ, ΔΙΑΙΡΕΙ ΚΑΙ ΒΑΣΙΛΕΥΕ

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Διοικητική Λογιστική

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 1

Έλεγχος και Διασφάλιση Ποιότητας Ενότητα 4: Μελέτη ISO Κουππάρης Μιχαήλ Τμήμα Χημείας Εργαστήριο Αναλυτικής Χημείας

Εισαγωγή στους Η/Υ. Ενότητα 2β: Αντίστροφο Πρόβλημα. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Διδακτική των εικαστικών τεχνών Ενότητα 1

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 2: Εφαρμογές Δικτυωτής Ανάλυσης (1 ο Μέρος)

Αερισμός. Ενότητα 1: Αερισμός και αιμάτωση. Κωνσταντίνος Σπυρόπουλος, Καθηγητής Σχολή Επιστημών Υγείας Τμήμα Ιατρικής

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Κβαντική Επεξεργασία Πληροφορίας

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1)

Διδακτική των εικαστικών τεχνών Ενότητα 3

Φιλοσοφία της Ιστορίας και του Πολιτισμού

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 5

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Τεχνικό Σχέδιο - CAD

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

ΗΛΕΚΤΡΟΝΙΚΗ ΙIΙ Ενότητα 6

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Έλεγχος Ποιότητας Φαρμάκων

Βάσεις Περιβαλλοντικών Δεδομένων

Τεχνικό Σχέδιο - CAD. Τόξο Κύκλου. Τόξο Κύκλου - Έλλειψη. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Τεχνικό Σχέδιο - CAD

Εισαγωγή στη Δικτύωση Υπολογιστών

Εφαρμογές των Τεχνολογιών της Πληροφορίας και των Επικοινωνιών στη διδασκαλία και τη μάθηση

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Διδακτική των εικαστικών τεχνών Ενότητα 2

Ψηφιακή Επεξεργασία Εικόνων

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

Βέλτιστος Έλεγχος Συστημάτων

Μηχανολογικό Σχέδιο Ι

Διδακτική Πληροφορικής

Ιστορία της μετάφρασης

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 10: ΤΕΧΝΙΚΕΣ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΑΝΑΛΥΣΗΣ ΑΛΓΟΡΙΘΜΩΝ ΓΙΑ ΠΡΟΒΛΗΜΑΤΑ ΜΕ ΑΠΑΓΟΡΕΥΤΙΚΟ ΑΡΙΘΜΟ ΠΕΡΙΠΤΩΣΕΩΝ

Δομές Δεδομένων Ενότητα 1

Εφαρμογές πληροφορικής σε θέματα πολιτικού μηχανικού

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 3: Εφαρμογές Δικτυωτής Ανάλυσης (2 ο Μέρος)

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Πρακτική Άσκηση σε σχολεία της δευτεροβάθμιας εκπαίδευσης

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων.

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 2

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Διδακτική Πληροφορικής

Διδακτική των εικαστικών τεχνών Ενότητα 2

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Transcript:

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 8: ΧΡΗΣΗ ΔΟΜΩΝ ΔΕΝΤΡΟΥ ΚΑΙ ΣΩΡΟΥ ΓΙΑ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗΣ ΑΛΓΟΡΙΘΜΟΣ HEAPSORT Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

ΠΕΡΙΕΧΟΜΕΝΟ Βασικές Έννοιες Δομή Σωρού, Σωρός Αλγόριθμος Κατασκευής Σωρού Αλγόριθμος Συμπλήρωσης Σωρού Παράδειγμα Αλγόριθμος Ταξινόμησης Σωρού - HeapSort Παράδειγμα 2

ΔΟΜΗ ΣΩΡΟΥ Ορισμός Δέντρο που προκύπτει από πλήρες δυαδικό δέντρο με ρίζα αν του αφαιρεθούν μερικοί κόμβοι (ή κανένας) από τα δεξιά του τελευταίου επιπέδου. Ειδικότερα δομή σωρού έχω σε ένα δέντρο αν: όλοι οι εσωτερικοί κόμβοι έχουν δυο παιδιά, με μόνη εξαίρεση τον πιο δεξιά εσωτερικό κόμβο του επιπέδου d-1 που επιτρέπεται να έχει βαθμό 1, οπότε θα έχει μόνο αριστερό παιδί, και στο επίπεδο d-1 τα φύλλα είναι όλα στα δεξιά των εσωτερικών κόμβων. 3

ΑΝΤΙΣΤΟΙΧΙΣΗ ΛΙΣΤΑΣ ΣΕ ΔΟΜΗ ΣΩΡΟΥ Αν έχω μια λίστα L με n αριθμούς τους αντιστοιχίζω σε μια δομή σωρού βάθους d log n, έτσι ώστε στο επίπεδο j της δομής σωρού ο πρώτος κόμβος να αντιστοιχεί στον αριθμό που βρίσκεται στη θέση 2 j στη λίστα L και ο τελευταίος στον αριθμό που βρίσκεται στη θέση 2 j+1-1 στη λίστα L με εξαίρεση το τελευταίο επίπεδο όπου δεν υπάρχουν αρκετοί όροι. 4

ΠΑΡΑΔΕΙΓΜΑ Αν L=[5, 6, 7, 9, 4, 3, 0, 1] τότε η δομή σωρού είναι: 5 6 7 9 4 3 0 1 5

ΣΩΡΟΣ - HEAP Ορισμός Σωρός ονομάζεται ένα δέντρο στους κόμβους του οποίου αντιστοιχούν αριθμοί από μια λίστα L και είναι δομή σωρού με την επιπλέον ιδιότητα ο αριθμός που αντιστοιχεί σε έναν κόμβο να μην είναι μικρότερος από τους αριθμούς που αντιστοιχούν στα παιδία του, αν ο κόμβος έχει παιδιά. 6

ΣΧΕΔΙΑΣΜΟΣ ΑΛΓΟΡΙΘΜΟΥ ΚΑΤΑΣΚΕΥΗΣ ΣΩΡΟΥ Ο αλγόριθμος κατασκευής σωρού παίρνει σαν είσοδο μια δομή σωρού L και δίνει σαν έξοδο ένα σωρό. Ο αλγόριθμος κατασκευής σωρού χρησιμοποιεί ως υποαλγόριθμο τον αλγόριθμο συμπλήρωσης σωρού που παίρνει σαν είσοδο μια δομή σωρού όπου τα παιδιά της ρίζας είναι σωροί και δίνει σαν έξοδο ένα σωρό. 7

ΒΗΜΑΤΑ Ο αλγόριθμος κατασκευής σωρού επισκέπτεται τους εσωτερικούς κόμβους του δέντρου εισόδου από επίπεδο σε επίπεδο και σε κάθε επίπεδο από αριστερά προς τα δεξιά. Η επίσκεψη ξεκινά από το προτελευταίο επίπεδο προς τα υψηλότερα επίπεδα. Σε κάθε εσωτερικό κόμβο ενεργοποιείται ο αλγόριθμος συμπλήρωσης σωρού για το δέντρο που έχει ρίζα τον κόμβο αυτό. 8

ΑΛΓΟΡΙΘΜΟΣ ΚΑΤΑΣΚΕΥΗΣ ΣΩΡΟΥ-Κ.Σ Είσοδος: Δομή σωρού L με n κόμβους. Έξοδος: Σωρός Ψευδοκώδικας: d log n m 1 =2 d for m=d-1 downto 0 do k=m while 2k<=n and k<m 1 do κλήση αλγόριθμου σ.σ(r,k,n) k=k+1 end while m 1 =2 m end for 9

ΑΛΓΟΡΙΘΜΟΣ ΣΥΜΠΛΗΡΩΣΗΣ ΣΩΡΟΥ- Σ.Σ(r,k,n) Είσοδος: Δομή σωρού με δείκτη ρίζας r και n στοιχεία όπου καθένα από τα υποδέντρα της ρίζας είναι σωρός. Έξοδος: Σωρός Ψευδοκώδικας: x=l(r) rleft=2r while rleft <= n do max=rleft rright=rleft+1 if rright<=n and L(rright)>=L(rleft) then max=rright if x<l(max) then do L(r)=L(max) r=max rleft=2max end if end while L(r)=x 10

ΠΑΡΑΔΕΙΓΜΑ 1/4 Πρόβλημα: Να εφαρμοστεί ο αλγόριθμος κατασκευής σωρού για τη λίστα L=[10,13,18,28,9,38,19,48,39,23,28]. Απάντηση: 1. Μετατρέπουμε τη λίστα L σε δομή σωρού: 10 13 18 28 9 38 19 48 39 23 28 11

ΠΑΡΑΔΕΙΓΜΑ 2/4 2. Ξεκινούμε από το προτελευταίο επίπεδο, d-1=2. Καλούμε τον αλγόριθμο σ.σ για το υποδέντρο με ρίζα το 28, και στη συνέχεια για το υποδέντρο με ρίζα το 9: 28 48 9 28 48 39 28 39 23 28 23 9 Οπότε: 10 13 18 48 28 38 19 28 39 23 9 12

ΠΑΡΑΔΕΙΓΜΑ 3/4 3. Πηγαίνουμε σε επίπεδο 1 και καλούμε τον αλγόριθμο σ.σ για το υποδέντρο με ρίζα το 13, και στη συνέχεια για το υποδέντρο με ρίζα το 18: 13 48 48 28 39 28 18 38 28 39 23 9 Οπότε: 28 13 23 9 10 38 19 18 19 48 38 39 28 18 19 28 13 23 9 13

ΠΑΡΑΔΕΙΓΜΑ 4/4 4. Πηγαίνουμε σε επίπεδο 0 και καλούμε τον αλγόριθμο σ.σ για τη ρίζα με τον αριθμό 10: 48 39 38 28 28 18 19 10 13 23 9 14

ΑΛΓΟΡΙΘΜΟΣ HEAPSORT ΓΙΑ ΤΑΞΙΝΟΜΗΣΗ ΛΙΣΤΑΣ 1/2 Βήματα: 1. Ο HeapSort εφαρμόζει πρώτα τον αλγόριθμο κατασκευής σωρού στην αρχική λίστα L. Τότε στη ρίζα τοποθετείται το μέγιστο στοιχείο της λίστας. 2. Το στοιχείο που βρίσκεται στη ρίζα του σωρού το παίρνουμε και το βάζουμε στο τέλος της L. 3. Στην κενή θέση τοποθετείται το τελευταίο φύλλο (το δεξιότερο στο τελευταίο επίπεδο) που αφαιρείται από δέντρο. Ο σωρός γίνεται δομή σωρού.

ΑΛΓΟΡΙΘΜΟΣ HEAPSORT ΓΙΑ ΤΑΞΙΝΟΜΗΣΗ ΛΙΣΤΑΣ 2/2 4. Καλείται ο αλγόριθμος συμπλήρωσης σωρού, οπότε η δομή σωρού γίνεται πάλι σωρός με το μεγαλύτερο στοιχείο στη ρίζα. Το στοιχείο αυτό τοποθετείται στη θέση n-1 της L και στη ρίζα μπαίνει πάλι τελευταίο φύλλο. 5. Επαναλαμβάνουμε διαδικασία μέχρι τέλος στοιχείων λίστας. 16

ΨΕΥΔΟΚΩΔΙΚΑΣ HEAPSORT κλήση αλγορίθμου κατασκευής σωρού κ.σ. for i=n to 2 do a=l(i) κλήση αλγορίθμου συμπλήρωσης σωρού σ.σ(1,1,i-1) L(i)=a end for 17

ΠΑΡΑΔΕΙΓΜΑ 1/5 Πρόβλημα: Εφαρμόστε τον αλγόριθμο HeapSort για να ταξινομήσετε τη λίστα L=[13,11,14,12,15,16] Απάντηση: Η δομή σωρού στην οποία αντιστοιχεί η λίστα L είναι: 13 11 14 12 15 16 Εφαρμόζουμε τον αλγόριθμο κατασκευής σωρού και παίρνουμε: 16 15 14 12 11 13 18

ΠΑΡΑΔΕΙΓΜΑ 2/5 Τοποθετώ το στοιχείο στη ρίζα στη θέση L(6) και στη ρίζα βάζω το τελευταίο φύλλο: L=[13,15,14,12,11,16] Εφαρμόζουμε τον αλγόριθμο συμπλήρωσης σωρού στο νέο δέντρο: 13 15 14 12 11 15 13 14 12 11 19

ΠΑΡΑΔΕΙΓΜΑ 3/5 Τοποθετώ το στοιχείο στη ρίζα στη θέση L(5) και στη ρίζα βάζω το τελευταίο φύλλο: L=[11,13,14,12,15,16] 11 13 14 12 Εφαρμόζουμε τον αλγόριθμο συμπλήρωσης σωρού στο νέο δέντρο: 14 13 11 12 20

ΠΑΡΑΔΕΙΓΜΑ 4/5 Τοποθετώ το στοιχείο στη ρίζα στη θέση L(4) και στη ρίζα βάζω το τελευταίο φύλλο: L=[12,13,11,14,15,16] 12 13 11 Εφαρμόζουμε τον αλγόριθμο συμπλήρωσης σωρού στο νέο δέντρο: 13 12 11 Τοποθετώ το στοιχείο στη ρίζα στη θέση L(3) και στη ρίζα βάζω το τελευταίο φύλλο: L=[12,11,13,14,15,16] 12 11 21

ΠΑΡΑΔΕΙΓΜΑ 5/5 Εφαρμόζουμε τον αλγόριθμο συμπλήρωσης σωρού στο νέο δέντρο: 12 11 Τοποθετώ το στοιχείο στη ρίζα στη θέση L(2) και στη ρίζα βάζω το τελευταίο φύλλο: L=[11,12,13,14,15,16] 22

ΧΡΗΜΑΤΟΔΟΤΗΣΗ Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στo πλαίσιo του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Πατρών» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 23

ΣΗΜΕΙΩΜΑ ΙΣΤΟΥΡΙΚΟΥ ΕΚΔΟΣΕΩΝ ΕΡΓΟΥ Το παρόν έργο αποτελεί την έκδοση 1.0. 24

ΣΗΜΕΙΩΜΑ ΑΝΑΦΟΡΑΣ Copyright Πανεπιστήμιο Πατρών, Δημήτριος Κουκόπουλος. «Σχεδίαση και Ανάλυση Αλγορίθμων. ΧΡΗΣΗ ΔΟΜΩΝ ΔΕΝΤΡΟΥ ΚΑΙ ΣΩΡΟΥ ΓΙΑ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗΣ ΑΛΓΟΡΙΘΜΟΣ HEAPSORT». Έκδοση: 1.0. Πάτρα 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/courses/culture109/. 25

ΣΗΜΕΙΩΜΑ ΑΔΕΙΟΔΟΤΗΣΗΣ Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. 26

ΔΙΑΤΗΡΗΣΗ ΣΗΜΕΙΩΜΑΤΩΝ Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς το Σημείωμα Αδειοδότησης τη δήλωση Διατήρησης Σημειωμάτων το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) μαζί με τους συνοδευόμενους υπερσυνδέσμους. 27