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

Σχετικά έγγραφα
ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ

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

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

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

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

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

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

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

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

Θέματα υπολογισμού στον πολιτισμό

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

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

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

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

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

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

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

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

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

Θέματα υπολογισμού στον πολιτισμό

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Θέματα υπολογισμού στον πολιτισμό

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Διακριτά Μαθηματικά. Ενότητα 5: Απαρίθμηση: Διωνυμικοί συντελεστές

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Θεατρικές Εφαρμογές και Διδακτική της Φυσικής Ι

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων περίπτωσης χρήσης (1ο Μέρος)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δυναμική και Έλεγχος E-L Ηλεκτρομηχανικών Συστημάτων

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

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

Transcript:

Εισαγωγή στους Αλγόριθμους Ενότητα 16: Δυαδική αναζήτηση και ταξινόμηση με συγχώνευση Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

Σκοποί ενότητας Παρουσίαση και μελέτη αλγορίθμων για δυαδική αναζήτηση και ταξινόμηση με συγχώνευση Τίτλος Ενότητας 2

Περιεχόμενα ενότητας Παρουσίαση και μελέτη αλγορίθμων για δυαδική αναζήτηση και ταξινόμηση με συγχώνευση Τίτλος Ενότητας 3

Εισαγωγή στους Αλγόριθμους Δυαδική αναζήτηση και ταξινόμηση με συγχώνευση

Δυαδική αναζήτηση (Binary search) ΔΕΔΟΜΕΝΟ: ένα μεγάλο αρχείο που περιέχει τιμές z [0,1,,n 1] ταξινομημένες ΖΗΤΟΥΜΕΝΟ: να βρούμε δοσμένη τιμή k στο αρχείο αυτό ΙΔΕΑ: Συγκρίνουμε την τιμή k με z[n/2] και ανάλογα με το αποτέλεσμα αναζητούμε το k αναδρομικά είτε στο πρώτο μισό του αρχείου z[0,,n/2 1], είτε στο δεύτερο μισό του αρχείου z[n/2,,n 1] Η αναδρομή περιγράφεται από τη σχέση (a=1,b=2,d=0) n d ) + O( n ) = T ( n ) + (1) T ( n) = at ( O b 2 Επομένως, ο χρόνος εκτέλεσης του αλγορίθμου είναι O(log n) 5

Δυαδική αναζήτηση (Binary search) σε ΔΕΔΟΜΕΝΟ: τηλεφωνικό κατάλογο Τηλεφωνικός κατάλογος με n ονόματα και έναν αριθμό τηλεφώνου για κάθε όνομα Ο τηλεφωνικός κατάλογος είναι ταξινομημένος κατά αύξουσα αλφαβητική σειρά ως προς τα ονόματα Ένα όνομα από τον κατάλογο ΖΗΤΟΥΜΕΝΟ: Να βρεθεί το τηλέφωνο που αντιστοιχεί στο δοσμένο όνομα 6

Δυαδική αναζήτηση (Binary search) σε τηλεφωνικό κατάλογο Το πρόβλημα λύνεται με την τεχνική «διαίρει και βασίλευε» με βάση την παρατήρηση ότι δεδομένου ενός ονόματος υπάρχουν 3 περιπτώσεις: Το όνομα βρίσκεται στη μεσαία θέση του καταλόγου Το όνομα βρίσκεται σε κάποια θέση στο πρώτο μισό του καταλόγου Το όνομα βρίσκεται σε κάποια θέση στο δεύτερο μισό του καταλόγου Ο αλγόριθμος αρχικά εξετάζει αν το δοσμένο όνομα είναι στη μέση του τηλεφωνικού καταλόγου Αν είναι, επιστρέφει το τηλέφωνο Διαφορετικά, λόγω της αλφαβητικής ταξινόμησης του καταλόγου, το όνομα θα βρίσκεται είτε στο πρώτο είτε στο δεύτερο μισό του καταλόγου: οπότε το αναζητά εκεί Συνεχίζει με τον ίδιο τρόπο μέχρι να το προσδιορίσει 7

Δυαδική αναζήτηση (Binary search) σε τηλεφωνικό κατάλογο Ο αλγόριθμος με τη μορφή ψευδοκώδικα: 8

Δυαδική αναζήτηση (Binary search) σε τηλεφωνικό κατάλογο: παράδειγμα Ο τηλεφωνικός κατάλογος: Γιώργος: 2641056789 Εύη: 2641098765 Κατερίνα: 2641054321 Ρούλα: 2641013579 Σταύρος: 264101234 Αναζητούμε το τηλέφωνο της Εύης Γιώργος Εύη Κατερίνα Ρούλα Σταύρος Προσπάθεια 1 Γιώργος Εύη Κατερίνα Ρούλα Σταύρος Προσπάθεια 2 Γιώργος Εύη Κατερίνα Ρούλα Σταύρος Προσπάθεια 3 9

Δυαδική αναζήτηση (Binary search) σε τηλεφωνικό κατάλογο: παράδειγμα Χρόνος εκτέλεσης; Για να τον βρούμε ρωτάμε: πόσες φορές μπορεί να χρειαστεί να διαιρέσω τον κατάλογο σε δύο μισά προκειμένου να βρω το τηλέφωνο που αντιστοιχεί στο δοσμένο όνομα; Στη χειρότερη περίπτωση μπορεί το δοσμένο όνομα να είναι (πρώτο ή) τελευταίο στον κατάλογο πρέπει να διαιρέσω τον κατάλογο στα 2 τόσες φορές ώστε να μείνει ένα μόνο στοιχείο Αν ο κατάλογος έχει n καταχωρήσεις, το ζητούμενο πλήθος διαιρέσεων είναι n/2 k =1 n=2 k k=log2n χρόνος εκτέλεσης αλγορίθμου δυαδικής αναζήτησης: logn=ο(log n) πολύ γρήγορος 10

Ταξινόμηση ΔΕΔΟΜΕΝΟ: λίστα με n στοιχεία ZHTOYMENO: αναδιάταξε τα στοιχεία ώστε να εμφανιστούν σε αύξουσα σειρά Παράδειγμα: Δοσμένη λίστα: 5 1 6 9 4 8 Ζητούμενη λίστα: 1 4 5 6 8 9 11

Ταξινόμηση Ενδεικτικές εφαρμογές: Προφανείς εφαρμογές Ταξινόμηση λίστας ονομάτων Οργάνωση MP3 σε μία βιβλιοθήκη Εμφάνιση των αποτελεσμάτων του PageRank της Google Εμφάνιση σχολίων σε ένα blog με αντίστροφη χρονολογική σειρά Προβλήματα που γίνονται ευκολότερα αν τα δεδομένα τους είναι ταξινομημένα Εύρεση μεσαίου στοιχείου λίστας Εύρεση πλησιέστερου ζεύγους Δυαδική αναζήτηση σε βάση δεδομένων Εύρεση διπλο εγγραφών σε λίστα (π.χ., mailing list) Πιο πολύπλοκες εφαρμογές Συμπίεση δεδομένων Γραφικά Υπολογιστική βιολογία Διαχείριση αλυσίδας προμηθειών Προτάσεις βιβλίων σε ηλεκτρονικό κατάστημα Εξισορρόπηση φορτίου σε παράλληλο υπολογιστή 12

Mergesort: ταξινόμηση με συγχώνευση Ιδέα: χωρίζουμε τη λίστα που πρέπει να ταξινομήσουμε σε 2 μισά, αναδρομικά ταξινομούμε κάθε μισό, και μετά συγχωνεύουμε τις δύο ταξινομημένες υπολίστες Οαλγόριθμος(επινοήθηκε από τον John von Neumann το 1945): 13

Mergesort: ταξινόμηση με συγχώνευση Διαίρει: Το πρόβλημα μεγέθους N (με N αριθμούς) διαιρείται σε 2 υποπροβλήματα μεγέθους N/2 το καθένα Βασίλευε: Ταξινόμησε κάθε υποπρόβλημα εφαρμόζοντας αναδρομικά πάλι MergeSort Συνδύασε: Συγχώνευσε τους ταξινομημένους υποπίνακες σε έναν ενιαίο ταξινομημένο πίνακα Διαίρει Βασίλευε-Ταξινόμησε Συνδύασε-Συγχώνευσε 14

Mergesort: ταξινόμηση με συγχώνευση Διαίρεση Συγχώνευση 15

Mergesort: ταξινόμηση με συγχώνευση 16

Mergesort: ταξινόμηση με συγχώνευση Χρόνος εκτέλεσης; Πρέπει να βρούμε την αντίστοιχη αναδρομική σχέση : στο MergeSort σταματάμε την αναδρομή όταν έχουμε 2 στοιχεία: οπότε τα συγκρίνουμε και τα επιστρέφουμε στη σωστή σειρά Συγχώνευση είναι η διαδικασία συνδυασμού δύο ταξινομημένων αρχείων σε ένα ταξινομημένο αρχείο Για εισόδους μεγέθους n γίνεται σε χρόνο O(n) 17

Mergesort: ταξινόμηση με συγχώνευση Έστω T(n) ο χρόνος εκτέλεσης της χειρότερης περίπτωσης για στιγμιότυπα μεγέθους n Ο αλγόριθμος δαπανά χρόνο το πολύ: O(n) για να διαιρέσει την είσοδο σε δύο τμήματα μεγέθους n/2 το καθένα T(n/2) για να επιλύσει το κάθε τμήμα O(n) για να συνδυάσει (συγχωνεύσει) τις λύσεις από τις δύο αναδρομικές κλήσεις Άρα ο χρόνος εκτέλεσης T(n) του Mergesort ικανοποιεί την ακόλουθη αναδρομική σχέση (recurrence relation): Για σταθερά c, T(n) 2T(n/2) + cn όταν n > 2 και T(n) cn 18

Mergesort: ταξινόμηση με συγχώνευση 19

Mergesort: ταξινόμηση με συγχώνευση 1 ο επίπεδο: 1 (=2 0 ) υποπρόβλημα μεγέθους n χρειάζεται χρόνο cn + χρόνος αναδρομικών κλήσεων 2 ο επίπεδο: 2 (=2 1 ) προβλήματα μεγέθους n/2 το καθένα και καθένα από αυτά χρειάζεται χρόνο το πολύ cn/2 συνολικός χρόνος: cn + χρόνος αναδρομικών κλήσεων 3 ο επίπεδο: 4 (=2 2 ) προβλήματα μεγέθους n/4 το καθένα και καθένα από αυτά χρειάζεται χρόνο το πολύ cn/4 συνολικός χρόνος: cn + χρόνος αναδρομικών κλήσεων 20

Mergesort: ταξινόμηση με συγχώνευση Επίπεδο j: ο αριθμός των υποπροβλημάτων έχει διπλασιαστεί j φορές υπάρχουν 2 j υποπροβλήματα Καθένααπόαυτάέχει υποδιπλασιαστεί (δηλ., έχει κοπεί στο μισό) j φορές κάθε υποπρόβλημα έχει μέγεθος n/2 j χρειάζεται χρόνο το πολύ cn/2 j Όλαταυποπροβλήματατου επιπέδου j χρειάζονται χρόνο συνολικά το πολύ 2 j (cn/2 j ) = cn 21

Mergesort: ταξινόμηση με συγχώνευση Ο αριθμός των υποδιπλασιασμών της εισόδου έτσι ώστε να μειωθεί το μέγεθος της από n σε 2 είναι log2 n 1 αφού ισχύει n/2 k = 2 n = 2k+1 log2 n = k+1 Χρόνος το πολύ cn για log n επίπεδα δίνει συνολικό χρόνο εκτέλεσης O(n log n) 22

Τέλος Ενότητας

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

Σημειώματα

Σημείωμα Ιστορικού Εκδόσεων Έργου Το παρόν έργο αποτελεί την έκδοση 1.00. Έχουν προηγηθεί οι κάτωθι εκδόσεις: Τίτλος Ενότητας 26

Σημείωμα Αναφοράς Copyright Πανεπιτήμιο Πατρών, Εύη Παπαϊωάννου. «Εισαγωγή στους Αλγόριθμους. Δυαδική αναζήτηση και ταξινόμηση με συγχώνευση.». Έκδοση: 1.0. Πάτρα 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/courses/culture158/index.php Τίτλος Ενότητας 27

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

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

Σημείωμα Χρήσης Έργων Τρίτων Το Έργο αυτό κάνει χρήση των ακόλουθων έργων: Εικόνες/Σχήματα/Διαγράμματα/Φωτογραφίες Σχεδιασμός Αλγορίθμων. Jon Kleinberg, Eva Tardos. Επιστημονική επιμέλεια Ελληνικής έκδοσης: Χρήστος Ζαρολιάγκης. Εκδόσεις Κλειδάριθμος, 2009. ISBN: 978 960 461 207 9. Κωδικός Βιβλίου στον Εύδοξο: 13898. Αλγόριθμοι. Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani. Εκδόσεις Κλειδάριθμος, 2009. ISBN 978 960 524 444 6. Κωδικός Βιβλίου στον Εύδοξο: 13583. http://www.wikipedia.org Τίτλος Ενότητας 30