Outline. 6 Edit Distance
|
|
- Νικόλας Δεσποτόπουλος
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Αλγόριθμοι και Πολυπλοκότητα Άπληστοι Αλγόριθμοι και Δυναμικός Προγραμματισμός Ασκήσεις CoReLab ΣΗΜΜΥ - Ε.Μ.Π. 16 Νοεμβρίου 216 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
2 Outline 1 Βιαστικός Μοτοσυκλετιστής 2 Επιτροπή Αντιπροσώπων 3 Βότσαλα στη Σκακιέρα 4 Μέγιστη Κοινή Υπακολουθία 5 Μέγιστη Αύξουσα Υπακολουθία 6 Edit Distance (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
3 Βιαστικός Μοτοσυκλετιστής Α l 1 1 l 2 2 l 3 3 l 4 4 l 5 Β Είσοδος: n μήκη διαστημάτων n όρια ταχύτητας μία ταχύτητα u ένα χρονικό όριο T (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
4 Βιαστικός Μοτοσυκλετιστής Α l 1 1 l 2 2 l 3 3 l 4 4 l 5 Β Είσοδος: n μήκη διαστημάτων n όρια ταχύτητας μία ταχύτητα u ένα χρονικό όριο T Εξοδος: Ο ελάχιστος χρόνος που χρειάζεται για να διανύσει την διαδρομή, αν επιτρέπεται να παραβεί τα όρια ταχύτητας μόνο για συνολική διάρκεια T και κατά ταχύτητα u. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
5 Βιαστικός Μοτοσυκλετιστής Χρόνος για να διανύσει ένα διάστημα i Αν ξεπεράσει το όριο κατά u για χρόνο t i, dt i = t i + l i (u i + u) t i u i = l i u i u u i t i (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
6 Βιαστικός Μοτοσυκλετιστής Χρόνος για να διανύσει ένα διάστημα i Αν ξεπεράσει το όριο κατά u για χρόνο t i, dt i = t i + l i (u i + u) t i u i = l i u i u u i t i Δεδομένου ότι ο μοτοσυκλετιστής δεν επηρεάζει τον όρο l i u i, στόχος μας είναι max u u i t i s.t. t i = T t i l i u i + u (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
7 Βιαστικός Μοτοσυκλετιστής Βέλτιστη Λύση Ξοδεύω όσο πιο πολύ χρόνο μπορώ σε διαστήματα με μεγάλο u u i, δηλαδή μικρό u i. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
8 Βιαστικός Μοτοσυκλετιστής Βέλτιστη Λύση Ξοδεύω όσο πιο πολύ χρόνο μπορώ σε διαστήματα με μεγάλο u u i, δηλαδή μικρό u i. Απόδειξη - Επιχείρημα Ανταλλαγής Εστω μία βέλτιστη λύση η οποία ορίζει χρόνους ti, και η δικιά μας λύση t i, όπου τα διαστήματα είναι ταξινομημένα με αύξοντα όρια ταχύτητας. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
9 Βιαστικός Μοτοσυκλετιστής Βέλτιστη Λύση Ξοδεύω όσο πιο πολύ χρόνο μπορώ σε διαστήματα με μεγάλο u u i, δηλαδή μικρό u i. Απόδειξη - Επιχείρημα Ανταλλαγής Εστω μία βέλτιστη λύση η οποία ορίζει χρόνους ti, και η δικιά μας λύση t i, όπου τα διαστήματα είναι ταξινομημένα με αύξοντα όρια ταχύτητας. Εστω k το διάστημα που διαφέρουν. Σίγουρα tk < t k, καθώς η λύση μας διαθέτει όσο το δυνατόν παραπάνω χρόνο μπορεί σε κάθε διάστημα με τη σειρά. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
10 Βιαστικός Μοτοσυκλετιστής Βέλτιστη Λύση Ξοδεύω όσο πιο πολύ χρόνο μπορώ σε διαστήματα με μεγάλο u u i, δηλαδή μικρό u i. Απόδειξη - Επιχείρημα Ανταλλαγής Εστω μία βέλτιστη λύση η οποία ορίζει χρόνους ti, και η δικιά μας λύση t i, όπου τα διαστήματα είναι ταξινομημένα με αύξοντα όρια ταχύτητας. Εστω k το διάστημα που διαφέρουν. Σίγουρα tk < t k, καθώς η λύση μας διαθέτει όσο το δυνατόν παραπάνω χρόνο μπορεί σε κάθε διάστημα με τη σειρά. Αν μεταφέρουμε συνολικό χρόνο t k tk από επόμενα διαστήματα στο διάστημα k, ο συνολικός χρόνος δεν χειροτερεύει και η λύση παραμένει βέλτιστη. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
11 Βιαστικός Μοτοσυκλετιστής Βέλτιστη Λύση Ξοδεύω όσο πιο πολύ χρόνο μπορώ σε διαστήματα με μεγάλο u u i, δηλαδή μικρό u i. Απόδειξη - Επιχείρημα Ανταλλαγής Εστω μία βέλτιστη λύση η οποία ορίζει χρόνους ti, και η δικιά μας λύση t i, όπου τα διαστήματα είναι ταξινομημένα με αύξοντα όρια ταχύτητας. Εστω k το διάστημα που διαφέρουν. Σίγουρα tk < t k, καθώς η λύση μας διαθέτει όσο το δυνατόν παραπάνω χρόνο μπορεί σε κάθε διάστημα με τη σειρά. Αν μεταφέρουμε συνολικό χρόνο t k tk από επόμενα διαστήματα στο διάστημα k, ο συνολικός χρόνος δεν χειροτερεύει και η λύση παραμένει βέλτιστη. Με την ίδια διαδικασία μπορούμε να μεταασχηματίσουμε τη βέλτιστη λύση στη δική μας χωρίς να αυξήσουμε το συνολικό χρόνο. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
12 Outline 1 Βιαστικός Μοτοσυκλετιστής 2 Επιτροπή Αντιπροσώπων 3 Βότσαλα στη Σκακιέρα 4 Μέγιστη Κοινή Υπακολουθία 5 Μέγιστη Αύξουσα Υπακολουθία 6 Edit Distance (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
13 Επιτροπή Αντιπροσώπων (ΚΤ 4.15) Είσοδος: n το πλήθος βάρδιες, η κάθε μία εκ των οποίων αντιστοιχεί σε έναν εθελοντή (οι βάρδιες μπορεί να επικαλύπτονται μεταξύ τους). Εξοδος: Ο μικρότερος αριθμός εθελοντών που μπορεί να σχηματίσει μία πλήρη επιτροπή αντιπροσώπων. Μία επιτροπή είναι πλήρης, αν για κάθε εθελοντή που δεν είναι μέλος της, υπάρχει ένας εθελοντής που είναι μέλος της και η βάρδιά του έχει επικάλυψη με του πρώτου. Ισοδύναμα Είσοδος: Διαστήματα [s i, f i ) i = 1,..., n. Εξοδος: Σύνολο διαστημάτων, ελαχίστου δυνατού μεγέθους, η ένωση των οποίων έχει επικάλυψη με κάθε διάστημα. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
14 Επιτροπή Αντιπροσώπων Είσοδος: Διαστήματα [s i, f i ) i = 1,..., n. Εξοδος: Σύνολο διαστημάτων, ελαχίστου δυνατού μεγέθους, η ένωση των οποίων έχει επικάλυψη με κάθε διάστημα. Λάθος Ιδέα: Οσο υπάρχουν ακάλυπτα διαστήματα, διάλεξε το μεγαλύτερο διάστημα που μπορεί να τα καλύψει. Αντιπαράδειγμα: optimal largest intervals (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
15 Επιτροπή Αντιπροσώπων Είσοδος: Διαστήματα [s i, f i ) i = 1,..., n. Εξοδος: Σύνολο διαστημάτων, ελαχίστου δυνατού μεγέθους, η ένωση των οποίων έχει επικάλυψη με κάθε διάστημα. Λύση: Οσο υπάρχουν ακάλυπτα διαστήματα: Βρες το ακάλυπτο διάστημα που τελειώνει νωρίτερα. Από τα διαστήματα που μπορούν να το καλύψουν, διάλεξε αυτό που τελειώνει αργότερα. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
16 Επιτροπή Αντιπροσώπων Λύση: Οσο υπάρχουν ακάλυπτα διαστήματα: Βρες το ακάλυπτο διάστημα που τελειώνει νωρίτερα. Από τα διαστήματα που μπορούν να το καλύψουν, διάλεξε αυτό που τελειώνει αργότερα. I1 I2 I3 I4 I5 I6 I7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
17 Επιτροπή Αντιπροσώπων Λύση: Οσο υπάρχουν ακάλυπτα διαστήματα: Βρες το ακάλυπτο διάστημα που τελειώνει νωρίτερα. Από τα διαστήματα που μπορούν να το καλύψουν, διάλεξε αυτό που τελειώνει αργότερα. I1 I2 I3 I4 I5 I6 I7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
18 Επιτροπή Αντιπροσώπων Λύση: Οσο υπάρχουν ακάλυπτα διαστήματα: Βρες το ακάλυπτο διάστημα που τελειώνει νωρίτερα. Από τα διαστήματα που μπορούν να το καλύψουν, διάλεξε αυτό που τελειώνει αργότερα. I1 I2 I3 I4 I5 I6 I7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
19 Επιτροπή Αντιπροσώπων Λύση: Οσο υπάρχουν ακάλυπτα διαστήματα: Βρες το ακάλυπτο διάστημα που τελειώνει νωρίτερα. Από τα διαστήματα που μπορούν να το καλύψουν, διάλεξε αυτό που τελειώνει αργότερα. I1 I2 I3 I4 I5 I6 I7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
20 Επιτροπή Αντιπροσώπων Λύση: Οσο υπάρχουν ακάλυπτα διαστήματα: Βρες το ακάλυπτο διάστημα που τελειώνει νωρίτερα. Από τα διαστήματα που μπορούν να το καλύψουν, διάλεξε αυτό που τελειώνει αργότερα. I1 I2 I3 I4 I5 I6 I7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
21 Επιτροπή Αντιπροσώπων Απόδειξη Ορθότητας - Επιχείρημα Ανταλλαγής Εστω μία βέλτιστη λύση O και O η δική μας. Εστω ότι ταξινομούμε σε αύξουσα σειρά τα διαστήματά μας σύμφωνα με το χρόνο ολοκλήρωσής τους και το ίδιο κάνουμε και για τα διαστήματα της βέλτιστης λύσης. Εστω I το πρώτο διάστημα στο οποίο οι δύο λύσεις διαφέρουν. I (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
22 Επιτροπή Αντιπροσώπων Απόδειξη Ορθότητας - Επιχείρημα Ανταλλαγής Εστω N το σύνολο των διαστημάτων που καλύπτονται μόνο από το I στη βέλτιστη λύση. Προφανώς, N, αφού διαφορετικά δε θα ήταν βέλτιστη γιατί θα μπορούσαμε να αποκλείσουμε το I από τη λύση και να παίρναμε εφικτή λύση μικρότερου μεγέθους. I N (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
23 Επιτροπή Αντιπροσώπων Απόδειξη Ορθότητας - Επιχείρημα Ανταλλαγής Εστω J το διάστημα του N που τελειώνει νωρίτερα. J I (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
24 Επιτροπή Αντιπροσώπων Απόδειξη Ορθότητας - Επιχείρημα Ανταλλαγής Το J καλύπτεται μόνο από το I στη βέλτιστη λύση άρα το προηγούμενο διάστημα αυτής δεν το καλύπτει. Επομένως, αφού το I είναι το πρώτο διάστημα στο οποίο οι δύο λύσεις διαφέρουν, το J θα είναι μέχρι στιγμής ακάλυπτο και στη δική μας λύση. Ο δικός μας αλγόριθμος, αφού παράγει εφικτή λύση, για να καλύψει το ακάλυπτο J θα έχει επιλέξει ένα διάστημα I που έχει επικάλυψη με το J και, λόγω του κριτηρίου επιλογής, θα τελειώνει τουλάχιστον το ίδιο αργά με το I. Άρα θα καλύπτει τουλάχιστον όλο το N. J I I (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
25 Επιτροπή Αντιπροσώπων Απόδειξη Ορθότητας - Επιχείρημα Ανταλλαγής Ανταλλάσσοντας το I με το I επομένως θα είχαμε μία εφικτή λύση O ίδιου μεγέθους με τη βέλτιστη, δηλαδή θα ήταν κι αυτή βέλτιστη λύση. Συνεχίζοντας την ίδια διαδικασία, πλησιάζουμε όλο και πιο πολύ τη δική μας λύση, κρατώντας το μέγεθος ελάχιστο. Άρα και η δική μας λύση είναι βέλτιστη αφού περιλαμβάνει όλα τα διαστήματα της βέλτιστης εκτός από κάποια που αντικαθίστανται (1 προς 1) από τα I, I, κ.ο.κ. και κανένα άλλο διάστημα*. * Εστω ότι καθώς διατρέχουμε τις δύο λίστες με τα διαστήματα των δύο λύσεων, φθάνουμε στο τέλος της βέλτιστης και η δική μας έχει ένα ακόμα διάστημα E. Το E τελειώνει αργότερα από το τελευταίο μας μέχρι στιγμής. Το E όμως δε μπορεί να επιλέχθηκε για να καλύψει διάστημα το οποίο αρχίζει πριν το τέλος του τελευταίου μας, γιατί έχοντας το μεγαλύτερο χρόνο ολοκλήρωσης απ όλα θα είχε επιλεγεί στη θέση κάποιων προηγούμενων και άρα θα ήταν στη διαδικασία ανταλλαγής. Επίσης, δε μπορεί να επιλέχθηκε για να καλύψει διάστημα που αρχίζει μετά το τέλος του τελευταίου μας, αφού μέχρι τότε έχουμε καλύψει τουλάχιστον τόσα διαστήματα όσα καλύπτει η βέλτιστη λύση, δηλαδή όλα. Άρα δεν υπάρχει τέτοιο διάστημα. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
26 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα Φτιάχνουμε δύο πίνακες S, F με τα διαστήματα ταξινομημένα ως προς τους χρόνους έναρξης και λήξης αντίστοιχα, σε χρόνο O(n log n). Χρησιμοποιούμε τον πρώτο για να βρίσκουμε τα ακάλυπτα διαστήματα και τον δεύτερο για να επιλέξουμε ποιό θα βάλουμε στη λύση μας. Στους πίνακες αυτούς αντιστοιχούν δείκτες p s, p f οι οποίοι, όπως θα φανεί, κινούνται πάντα προς τα δεξιά άρα η διαδικασία είναι γραμμικού χρόνου ως προς το n. Συνολικά, ο αλγόριθμός μας έχει πολυπλοκότητα: O(n log n) (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
27 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα F = [ f 1 f 2 f 3 f 4 f 7 f 5 f 6 ] S = [ s 1 s 2 s 3 s 5 s 4 s 6 s 7 ] p f = 1 p s = 1 I 1 I 2 I 3 I 4 I 5 I 6 I 7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
28 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα F = [ ] f 1 f 2 f 3 f 4 f 7 f 5 f 6 S = [ ] s 1 s 2 s 3 s 5 s 4 s 6 s 7 p f = 1 p s = 1 I 1 I 2 I 3 I 4 I 5 I 6 I 7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
29 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα Κινούμαστε στον S μέχρι να βρούμε όλα τα διαστήματα που έχουν επικάλυψη με το I 1 (δηλαδή μέχρι s i f 1 ) και παράλληλα αποθηκεύουμε αυτό με το μεγαλύτερο f i (=f 2 ). Αυτά τα διαστήματα δεν θα τα ξανακοιτάξουμε αφού τελειώνουν πριν το διάστημα που επιλέξαμε και δεν υπάρχουν ακάλυπτα διαστήματα στα αριστερά τους. Άρα ο δείκτης p s την επόμενη φορά θα ξεκινήσει από το σημείο που έμεινε. Επειτα, κινούμαστε στον F μέχρι να βρούμε το επόμενο ακάλυπτο διάστημα (μέχρι s i f 2 ). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
30 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα F = [ ] f 1 f 2 f 3 f 4 f 7 f 5 f 6 S = [ ] s 1 s 2 s 3 s 5 s 4 s 6 s 7 p f = 4 p s = 3 I 1 I 2 I 3 I 4 I 5 I 6 I 7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
31 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα F = [ ] f 1 f 2 f 3 f 4 f 7 f 5 f 6 S = [ ] s 1 s 2 s 3 s 5 s 4 s 6 s 7 p f = 4 p s = 3 I 1 I 2 I 3 I 4 I 5 I 6 I 7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
32 Επιτροπή Αντιπροσώπων Χρονική Πολυπλοκότητα F = [ ] f 1 f 2 f 3 f 4 f 7 f 5 f 6 S = [ ] s 1 s 2 s 3 s 5 s 4 s 6 s 7 p f = 8 p s = 8 I 1 I 2 I 3 I 4 I 5 I 6 I 7 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
33 Outline 1 Βιαστικός Μοτοσυκλετιστής 2 Επιτροπή Αντιπροσώπων 3 Βότσαλα στη Σκακιέρα 4 Μέγιστη Κοινή Υπακολουθία 5 Μέγιστη Αύξουσα Υπακολουθία 6 Edit Distance (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
34 Βότσαλα στη Σκακιέρα (DPV 6.5) Είσοδος: Μία σκακιέρα διαστάσεων 4 n και ένας ακέραιος σε κάθε κουτάκι (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
35 Βότσαλα στη Σκακιέρα (DPV 6.5) Είσοδος: Μία σκακιέρα διαστάσεων 4 n και ένας ακέραιος σε κάθε κουτάκι Στόχος: Να τοποθετήσουμε βότσαλα στα κουτάκια, ώστε κανένα βότσαλο να μην συνορεύει με άλλο οριζόντια ή κάθετα, μεγιστοποιώντας το άθροισμα των αριθμών στα κουτάκια με βότσαλα. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
36 Βότσαλα στη Σκακιέρα (DPV 6.5) Πρώτη Προσέγγιση Οσο υπάρχει χώρος, τοποθετούμε ένα βότσαλο στο κουτάκι με τον μεγαλύτερο αριθμό που επιτρέπεται. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
37 Βότσαλα στη Σκακιέρα (DPV 6.5) Πρώτη Προσέγγιση Οσο υπάρχει χώρος, τοποθετούμε ένα βότσαλο στο κουτάκι με τον μεγαλύτερο αριθμό που επιτρέπεται. Αντιπαράδειγμα (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
38 Βότσαλα στη Σκακιέρα (DPV 6.5) Πρώτη Προσέγγιση Οσο υπάρχει χώρος, τοποθετούμε ένα βότσαλο στο κουτάκι με τον μεγαλύτερο αριθμό που επιτρέπεται. Αντιπαράδειγμα αξία greedy 1 99 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
39 Βότσαλα στη Σκακιέρα (DPV 6.5) Πρώτη Προσέγγιση Οσο υπάρχει χώρος, τοποθετούμε ένα βότσαλο στο κουτάκι με τον μεγαλύτερο αριθμό που επιτρέπεται. Αντιπαράδειγμα βέλτιστη αξία (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
40 Βότσαλα στη Σκακιέρα (DPV 6.5) Είναι όμως τόσο τραγικός ο greedy αλγόριθμος; (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
41 Βότσαλα στη Σκακιέρα (DPV 6.5) Είναι όμως τόσο τραγικός ο greedy αλγόριθμος; Πρόταση Ο άπληστος αλγόριθμος είναι 1 4-προσεγγιστικός. Παράγει δηλαδή λύση αξίας τουλάχιστον το 25% της βέλτιστης. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
42 Βότσαλα στη Σκακιέρα (DPV 6.5) Είναι όμως τόσο τραγικός ο greedy αλγόριθμος; Πρόταση Ο άπληστος αλγόριθμος είναι 1 4-προσεγγιστικός. Παράγει δηλαδή λύση αξίας τουλάχιστον το 25% της βέλτιστης. Απόδειξη. Εστω S το σύνολο των βοτσάλων της βέλτιστης λύσης αξίας OPT και S το σύνολο της άπληστης λύσης αξίας GR OPT = (S \ S) + (S S ) 4 (S \ S ) + (S S ) ( 4 (S \ S ) + ) (S S ) = 4GR (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
43 Βότσαλα στη Σκακιέρα (DPV 6.5) Αφού η σκακιέρα έχει σταθερό αριθμός γραμμών, κάθε στήλη μπορεί να γεμίσει με συγκεκριμένο αριθμό τρόπων Ο συνδυασμός που θα επιλέξω επηρεάζει τις υπόλοιπες επιλογές. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
44 Βότσαλα στη Σκακιέρα (DPV 6.5) v 18 v 28 v 17 v 27 v 16 v 26 v 15 v 25 v 14 v 24 v 13 v 23 v 12 v 22 v 11 v 21 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
45 Βότσαλα στη Σκακιέρα (DPV 6.5) v 18 v 28 v 17 v 27 v 16 v 26 v 15 v 25 v 14 v 24 v 13 v 23 v 12 v 22 v 11 v 21 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
46 Βότσαλα στη Σκακιέρα (DPV 6.5) v 18 v 28 v 17 v 27 v 16 v 26 v 15 v 25 v 14 v 24 v 13 v 23 v 12 v 22 v 11 v 21 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
47 Βότσαλα στη Σκακιέρα (DPV 6.5) v 18 v 28 v 17 v 27 v 16 v 26 v 15 v 25 v 14 v 24 v 13 v 23 v 12 v 22 v 11 v 21 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
48 Βότσαλα στη Σκακιέρα (DPV 6.5) v 18 v 28 v n8 v 17 v 27 v n7 v 16 v 26 v n6 v 15 v 25 v n5... v 14 v 24 v n4 v 13 v 23 v n3 v 12 v 22 v n2 v 11 v 21 v n1 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
49 Βότσαλα στη Σκακιέρα (DPV 6.5) Ιδέα Για κάθε στήλη, θα λύνω το πρόβλημα βέλτιστα για όλους του πιθανούς συνδυασμούς. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
50 Βότσαλα στη Σκακιέρα (DPV 6.5) Ιδέα Για κάθε στήλη, θα λύνω το πρόβλημα βέλτιστα για όλους του πιθανούς συνδυασμούς. Θα χρησιμοποιήσω δυναμικό προγραμματισμό στη σχέση C[i, j] = v ij + C[1, j] = v 1j max k adj(j) {C[i 1, k]} (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
51 Βότσαλα στη Σκακιέρα (DPV 6.5) Ιδέα Για κάθε στήλη, θα λύνω το πρόβλημα βέλτιστα για όλους του πιθανούς συνδυασμούς. Θα χρησιμοποιήσω δυναμικό προγραμματισμό στη σχέση C[i, j] = v ij + C[1, j] = v 1j max k adj(j) {C[i 1, k]} Οπου C[i, j]: η αξία της βέλτιστης λύσης για τις στήλες 1 εώς i όπου η στήλη i έχει συνδυασμό βοτσάλων j v ij : η αξία που παράγεται αν τοποθετηθούν βότσαλα σε συνδυασμό j στην στήλη i adj(j): οι συνδυασμού που μπορούν να συνορεύουν με το συνδυασμό j (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
52 Βότσαλα στη Σκακιέρα (DPV 6.5) Τελική Λύση Η τιμή της βέλτιστης λύσης είναι η μέγιστη τιμή της στήλης n OPT = max C[n, i] i Η λύση προκύτει από τον ίδιο τον πίνακα γυρνώντας προς τα πίσω από το τέλος. Χρονική Πολυπλοκότητα Ο πίνακας C έχει μέγεθος 8 n και αφού ο αριθμός των γραμμών είναι σταθερός, κάθε στήλη υπολογίζεται σε σταθερό χρόνο. Συνολικά Θ(n) (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
53 Outline 1 Βιαστικός Μοτοσυκλετιστής 2 Επιτροπή Αντιπροσώπων 3 Βότσαλα στη Σκακιέρα 4 Μέγιστη Κοινή Υπακολουθία 5 Μέγιστη Αύξουσα Υπακολουθία 6 Edit Distance (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
54 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Είσοδος: Δύο ακολουθείες χαρακτήρων Εξοδος: Η μέγιστη σε μήκος κοινή υποακολουθία (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
55 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Είσοδος: Δύο ακολουθείες χαρακτήρων Εξοδος: Η μέγιστη σε μήκος κοινή υποακολουθία B A N A N A B A T M A N (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
56 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Είσοδος: Δύο ακολουθείες χαρακτήρων Εξοδος: Η μέγιστη σε μήκος κοινή υποακολουθία B A N A N A B A T M A N (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
57 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Πρώτη Προσέγγιση Κοιτάζω τον πρώτο χαρακτήρα κάθε ακολουθίας: Αν είναι ίδιοι, τότε σίγουρα αποτελούν μέρος τη μέγιστης υποακολουθίας Αν όχι, πρέπει να πετάξω τον έναν από τους δύο και να συνεχίσω Πως ξέρω όμως ποιον χαρακτήρα θα αφήσω προκειμένου να έχω βέλτιστη λύση; (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
58 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Εστω C[i, j] το μήκος της μέγιστης κοινής υποακολουθίας που προκύπτει μέχρι και τον χαρακτήρα i της πρώτης ακολουθίας και τον χαρακτήρα j της δεύτερης. Γενικεύοντας της προηγούμενη ιδέα προκύπτει η αναδρομική σχέση { C[i 1, j 1] + 1, αν S i = S j C[i, j] = max(c[i 1, j], C[i, j 1]), διαφορετικά C[i, ] = C[, j] = Οπου S, S οι δύο ακολουθίες (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
59 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B A N A N A B A T M A N (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
60 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B B A A T N M A A N N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
61 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B B A A T N M A A N N A 1 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
62 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B B A A T N M A A N N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
63 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B B A A T N M A A N N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
64 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B B A A T N M A A N N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
65 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε ε B B A A T N M A A N N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
66 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε B A T M A N ε B A N A N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
67 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε B A T M A N ε B A N A N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
68 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε B A T M A N ε B A N A N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
69 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε B A T M A N ε B A N A N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
70 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Χρησιμοποιώντας δυναμικό προγραμματισμό, η παραπάνω σχέση υπολογίζεται αποδοτικά ε B A T M A N ε B A N A N A (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
71 Μέγιστη Κοινή Υπακολουθία (CLRS ch15.4) Τελική Λύση Η τιμή της βέλτιστης λύσης βρίσκεται στο C[n, m], ενώ από τον πίνακα μπορεί να βρεθεί πως προέκυψε κάθε τιμή. Τα στοιχεία της κοινής υποακολουθίας είναι ακριβώς αυτά που έγινα διαγώνιες μεταβάσεις. Χρονική Πολυπλοκότητα Ο πίνακας είναι διαστάσεων n m και κάθε κελί γεμίζει σε O(1), άρα συνολικά Θ(n m) (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
72 Outline 1 Βιαστικός Μοτοσυκλετιστής 2 Επιτροπή Αντιπροσώπων 3 Βότσαλα στη Σκακιέρα 4 Μέγιστη Κοινή Υπακολουθία 5 Μέγιστη Αύξουσα Υπακολουθία 6 Edit Distance (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
73 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Είσοδος: Ακολουθία n αριθμών: a 1,..., a n. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
74 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Είσοδος: Ακολουθία n αριθμών: a 1,..., a n. Εξοδος: Μέγιστη (γνησίως) αύξουσα υπακολουθία. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
75 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Είσοδος: Ακολουθία n αριθμών: a 1,..., a n. Εξοδος: Μέγιστη (γνησίως) αύξουσα υπακολουθία. π.χ. Ακολουθία (n = 6): , δηλαδή a 1 = 5, a 2 = 2, a 3 = 6, a 4 = 3, a 5 = 6, a 6 = 9 Μέγιστη αύξουσα υπακολουθία: (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
76 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Είσοδος: Ακολουθία n αριθμών: a 1,..., a n. Εξοδος: Μέγιστη (γνησίως) αύξουσα υπακολουθία. Λύση με χρονική πολυπλοκότητα O(n 2 ): Από όλες τις αύξουσες υπακολουθίες που τελειώνουν στη θέση j {1,..., n}, διαλέγω τη μεγαλύτερη, μήκους έστω L(j). Επειτα, διαλέγω από τις τελευταίες και πάλι τη μεγαλύτερη, δηλαδή το κατάλληλο i τέτοιο ώστε i = argmax j {1,...,n} L(j). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
77 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση με χρονική πολυπλοκότητα O(n 2 ): Αρκεί να βρούμε τον αναδρομικό τύπο για το L(j). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
78 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση με χρονική πολυπλοκότητα O(n 2 ): Αρκεί να βρούμε τον αναδρομικό τύπο για το L(j). Φτιάχνουμε λίστες list(i) i = 1,..., n με τα στοιχεία που ικανοποιούν a j < a i και j < i σε χρόνο O(n 2 ) (κάθε αύξουσα υπακολουθία που τελειώνει στο i θα έχει προτελευταίο στοιχείο κάποιο από τη list(i)). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
79 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση με χρονική πολυπλοκότητα O(n 2 ): Αρκεί να βρούμε τον αναδρομικό τύπο για το L(j). Φτιάχνουμε λίστες list(i) i = 1,..., n με τα στοιχεία που ικανοποιούν a j < a i και j < i σε χρόνο O(n 2 ) (κάθε αύξουσα υπακολουθία που τελειώνει στο i θα έχει προτελευταίο στοιχείο κάποιο από τη list(i)). Η μέγιστη αύξουσα υπακολουθία που τελειώνει στο j θα έχει μήκος ένα μεγαλύτερο από τη μέγιστη υπακολουθία που τελειώνει σε κάποιο στοιχείο του list(i). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
80 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση με χρονική πολυπλοκότητα O(n 2 ): Άρα L(j) = 1 + max{l(i) i list(j)} (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
81 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση με χρονική πολυπλοκότητα O(n 2 ): Άρα L(j) = 1 + max{l(i) i list(j)} Για τον υπολογισμό κάθε ενός από τα L(i) συνεπώς χρειάζεται χρόνος list(i) n άρα συνολικά ο αλγόριθμός μας έχει πολυπλοκότητα O(n 2 ). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
82 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση με χρονική πολυπλοκότητα O(n 2 ): Άρα L(j) = 1 + max{l(i) i list(j)} Για τον υπολογισμό κάθε ενός από τα L(i) συνεπώς χρειάζεται χρόνος list(i) n άρα συνολικά ο αλγόριθμός μας έχει πολυπλοκότητα O(n 2 ). Για να βρούμε την υπακολουθία αρκεί να αποθηκεύουμε ως προηγούμενο στοιχείο του j το στοιχείο που επιλέγεται στον υπολογισμό του L(j). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
83 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Άλλη λύση με χρονική πολυπλοκότητα O(n 2 ): Μπορούμε να χρησιμοποιήσουμε κάπως το πρόβλημα της Μέγιστης Κοινής Υπακολουθίας; (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
84 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Άλλη λύση με χρονική πολυπλοκότητα O(n 2 ): Μπορούμε να χρησιμοποιήσουμε κάπως το πρόβλημα της Μέγιστης Κοινής Υπακολουθίας; Φτιάχνουμε την ακολουθία a 1,..., a m η οποία αποτελείται από τα διαφορετικά στοιχεία της αρχικής ακολουθίας ταξινομημένα κατά αύξουσα σειρά. Η Μέγιστη Κοινή Υπακολουθία μεταξύ της ταξινομημένης και της αρχικής είναι και η ζητούμενη Μέγιστη Αύξουσα Υπακολουθία. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
85 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Άλλη λύση με χρονική πολυπλοκότητα O(n 2 ): Μπορούμε να χρησιμοποιήσουμε κάπως το πρόβλημα της Μέγιστης Κοινής Υπακολουθίας; Φτιάχνουμε την ακολουθία a 1,..., a m η οποία αποτελείται από τα διαφορετικά στοιχεία της αρχικής ακολουθίας ταξινομημένα κατά αύξουσα σειρά. Η Μέγιστη Κοινή Υπακολουθία μεταξύ της ταξινομημένης και της αρχικής είναι και η ζητούμενη Μέγιστη Αύξουσα Υπακολουθία. Μπορούμε να βρούμε κάτι πιο γρήγορο; (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
86 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
87 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): Ορίζουμε: m(l) = δείκτης i τέτοιος ώστε το a i να είναι το μικρότερο στοιχείο στο οποίο τελειώνει κάποια αύξουσα υπακολουθία μήκους l (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
88 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): Ορίζουμε: m(l) = δείκτης i τέτοιος ώστε το a i να είναι το μικρότερο στοιχείο στο οποίο τελειώνει κάποια αύξουσα υπακολουθία μήκους l p(i) = ο δείκτης του προτελευταίου στοιχείου της μέγιστης υπακολουθίας που τελειώνει στο a i. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
89 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): Ορίζουμε: m(l) = δείκτης i τέτοιος ώστε το a i να είναι το μικρότερο στοιχείο στο οποίο τελειώνει κάποια αύξουσα υπακολουθία μήκους l p(i) = ο δείκτης του προτελευταίου στοιχείου της μέγιστης υπακολουθίας που τελειώνει στο a i. π.χ. Αύξουσες Υπακολουθίες μήκους l = 1: 5,2,6,3,6,9 a m(1) = a 2 = 2 Αύξουσες Υπακολουθίες μήκους l = 2: 5-6,5-6,5-9,2-6,2-3,2-6,2-9,6-9,3-9,6-9 a m(2) = a 4 = 3. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
90 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): m(l) = δείκτης i τέτοιος ώστε το a i να είναι το μικρότερο στοιχείο στο οποίο τελειώνει κάποια αύξουσα υπακολουθία μήκους l p(i) = ο δείκτης του προτελευταίου στοιχείου της μέγιστης υπακολουθίας που τελειώνει στο a i. Παρατήρηση: Το a m(1), a m(2),..., a m(lmax) είναι αύξουσα υπακολουθία. (Γιατί; Παρατηρήστε: Το a m(1) είναι το μικρότερο στοιχείο του πίνακα. Το a m(2), ως τελευταίο στοιχείο αύξουσας υπακολουθίας μήκους 2, είναι γνησίως μεγαλύτερο από τουλάχιστον ένα στοιχείο, έστω a k. Άρα a m(1) a k < a m(2).) (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
91 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): Για κάθε θέση του πίνακα i = 1,..., n: Ψάχνω το μεγαλύτερο μήκος υπακολουθίας l [, L max ] τέτοιο ώστε το a m(l) < a i (δυαδική αναζήτηση στα a m(1), a m(2),...). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
92 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): Για κάθε θέση του πίνακα i = 1,..., n: Ψάχνω το μεγαλύτερο μήκος υπακολουθίας l [, L max ] τέτοιο ώστε το a m(l) < a i (δυαδική αναζήτηση στα a m(1), a m(2),...). Το μήκος της μακρύτερης υπακολουθίας που τελειώνει στο a i θα είναι l + 1 και m(l) το προτελευταίο στοιχείο της. Άρα: m(l + 1) = i (αν υπήρχε στοιχείο < a i στο οποίο τελειώνει κάποια υπακολουθία μήκους l + 1, τότε η αναζήτηση δε θα είχε σταματήσει στο l) p(i) = m(l). (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
93 Μέγιστη Αύξουσα Υπακολουθία (DPV ch6.2) Λύση σε χρόνο O(n log n): Για κάθε θέση του πίνακα i = 1,..., n: Ψάχνω το μεγαλύτερο μήκος υπακολουθίας l [, L max ] τέτοιο ώστε το a m(l) < a i (δυαδική αναζήτηση στα a m(1), a m(2),...). Το μήκος της μακρύτερης υπακολουθίας που τελειώνει στο a i θα είναι l + 1 και m(l) το προτελευταίο στοιχείο της. Άρα: m(l + 1) = i (αν υπήρχε στοιχείο < a i στο οποίο τελειώνει κάποια υπακολουθία μήκους l + 1, τότε η αναζήτηση δε θα είχε σταματήσει στο l) p(i) = m(l). Αν l + 1 > L max τότε αυτό είναι το νέο L max. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
94 Outline 1 Βιαστικός Μοτοσυκλετιστής 2 Επιτροπή Αντιπροσώπων 3 Βότσαλα στη Σκακιέρα 4 Μέγιστη Κοινή Υπακολουθία 5 Μέγιστη Αύξουσα Υπακολουθία 6 Edit Distance (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
95 Edit Distance Είσοδος: Δύο ακολουθείες χαρακτήρων Εξοδος: Ο ελάχιστος αριθμός ενεργειών που απαιτούνται προκειμένου να γίνουν οι ακολουθίες ίδιες, όπου διαθέσιμες ενέργειες είναι: Προσθήκη Χαρακτήρα Διαγραφή Χαρακτήρα Αντικατάσταση Χαρακτήρα (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
96 Edit Distance Είσοδος: Δύο ακολουθείες χαρακτήρων Εξοδος: Ο ελάχιστος αριθμός ενεργειών που απαιτούνται προκειμένου να γίνουν οι ακολουθίες ίδιες, όπου διαθέσιμες ενέργειες είναι: Προσθήκη Χαρακτήρα Διαγραφή Χαρακτήρα Αντικατάσταση Χαρακτήρα S U N N Y S N O W Y (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
97 Edit Distance Είσοδος: Δύο ακολουθείες χαρακτήρων Εξοδος: Ο ελάχιστος αριθμός ενεργειών που απαιτούνται προκειμένου να γίνουν οι ακολουθίες ίδιες, όπου διαθέσιμες ενέργειες είναι: Προσθήκη Χαρακτήρα Διαγραφή Χαρακτήρα Αντικατάσταση Χαρακτήρα S U N N - Y S - N O W Y (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
98 Edit Distance Λύση Εστω E[i, j] το edit distance των ακολουθιών μέχρι και τους χαρακτήρες i, j των ακολουθιών. Τότε E[i, ] = i E[, j] = j E[i 1, j] + 1 E[i, j] = min E[i, j 1] + 1 E[i 1, j 1] + diff (i, j) Οπου diff (i, j) είναι αν οι χαρακτήρες i, j των ακολουθιών ταυτίζονται και 1 διαφορετικά. (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου / 52
I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11
Αλγόριθμοι και Πολυπλοκότητα 2η Σειρά Γραπτών και Προγραμματιστικών Ασκήσεων CoReLab ΣΗΜΜΥ - Ε.Μ.Π. Δεκέμβριος 2016 (CoReLab - NTUA) Αλγόριθμοι - 2η σειρά ασκήσεων Δεκέμβριος 2016 1 / 65 Outline 1 Άσκηση
Διαβάστε περισσότεραOutline. 6 Edit Distance
Αλγόριθμοι και Πολυπλοκότητα Άπληστοι Αλγόριθμοι και Δυναμικός Προγραμματισμός Ασκήσεις CoReLab ΣΗΜΜΥ - Ε.Μ.Π. 1 Δεκεμβρίου 214 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 1 Δεκεμβρίου 214 1 / 52 Outline 1
Διαβάστε περισσότεραI 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11
Αλγόριθμοι και Πολυπλοκότητα 2η Σειρά Γραπτών και Προγραμματιστικών Ασκήσεων CoReLab ΣΗΜΜΥ - Ε.Μ.Π. Δεκέμβριος 2018 (CoReLab - NTUA) Αλγόριθμοι - 2η σειρά ασκήσεων Δεκέμβριος 2018 1 / 64 Outline 1 Άσκηση
Διαβάστε περισσότερα2η Σειρά Γραπτών Ασκήσεων
2η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 1/23 1 Κλειδιά και κλειδαριές 2 Puzzle 3 Διαστημικές Μάχες 4 Κεραίες 5 Εργοστάσιο Ποτηριών 2/23 Κλειδιά και κλειδαριές
Διαβάστε περισσότεραΜη γράφετε στο πίσω μέρος της σελίδας
Εισαγωγή στο Σχεδιασμό & την Ανάλυση Αλγορίθμων Εξέταση Ιουνίου 2015 Σελ. 1 από 7 Στη σελίδα αυτή γράψτε μόνο τα στοιχεία σας. Γράψτε τις απαντήσεις σας στις επόμενες σελίδες, κάτω από τις αντίστοιχες
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου 2015 1 / 17 Μέγιστη Κοινή Υπακολουθία
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 23 Μαρτίου 2017 1 / 20 Επιλογή Το πρόβληµα
Διαβάστε περισσότερα3η Σειρά Γραπτών Ασκήσεων
1/48 3η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 2/48 1 Άσκηση 1: Πομποί και Δέκτες 2 Άσκηση 2: Διακοπές στην Ικαρία 3 Άσκηση 3: Επιστροφή στη Γη 4 Άσκηση
Διαβάστε περισσότεραΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ
ΑΛΓΟΡΙΘΜΟΙ http://eclass.aueb.gr/courses/inf161/ Άνοιξη 2016 - I. ΜΗΛΗΣ ΑΠΛΗΣΤΟΙ ΑΛΓΟΡΙΘΜΟΙ Greedy Algorithms 1 Greedy algorithms H βασική ιδέα: Άρχισε από ένα υπο-πρόβλημα μικρού μεγέθους Επαναληπτικά,
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν
Διαβάστε περισσότεραΠροσεγγιστικοί Αλγόριθμοι
Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)
Διαβάστε περισσότερα1η Σειρά Γραπτών Ασκήσεων
1/20 Ασυμπτωτικός Συμβολισμός, Αναδρομικές Σχέσεις 1η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 1 Ασυμπτωτικός Συμβολισμός, Αναδρομικές Σχέσεις 2 3 4 5 2/20
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 2 ιαίρει και Βασίλευε Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 2 1 / 24 Επιλογή Το πρόβληµα
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Τρίγωνο του Pascal Δυναμικός Προγραμματισμός Διωνυμικοί συντελεστές Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο
Διαβάστε περισσότεραΛυσεις προβλημάτων τελικής φάσης Παγκύπριου Μαθητικού Διαγωνισμού Πληροφορικής 2007
Λυσεις προβλημάτων τελικής φάσης Παγκύπριου Μαθητικού Διαγωνισμού Πληροφορικής 2007 Πρόβλημα 1 Το πρώτο πρόβλημα λύνεται με τη μέθοδο του Δυναμικού Προγραμματισμού. Για να το λύσουμε με Δυναμικό Προγραμματισμό
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές Διωνυμικοί
Διαβάστε περισσότεραΔιακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018
Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018 Αλγόριθμοι Ρυθμός αύξησης συναρτήσεων [Rosen 3.2] Αριθμητικές συναρτήσεις Τάξη αριθμητικών συναρτήσεων
Διαβάστε περισσότεραιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο
ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε Γενική μέθοδος σχεδιασμού αλγορίθμων: ιαίρεση σε ( 2) υποπροβλήματα
Διαβάστε περισσότεραΑπειροστικός Λογισμός Ι, χειμερινό εξάμηνο Λύσεις τέταρτου φυλλαδίου ασκήσεων. ( n(n+1) e 1 (
. Αποδείξτε ότι: Απειροστικός Λογισμός Ι, χειμερινό εξάμηνο 08-9. Λύσεις τέταρτου φυλλαδίου ασκήσεων. +) 7 +) +), 5 +7 5 5, +log ) 7 log 4, +, ++ + + ) +4+4 + +4, + si +, +) +), + [ ], + + 0, + +, ) +,,
Διαβάστε περισσότερα3η Σειρά Γραπτών Ασκήσεων
1/55 3η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 2/55 1 Άσκηση 1: Πομποί και Δέκτες 2 Άσκηση 2: Διακοπές στην Ικαρία 3 Άσκηση 3: Επιστροφή στη Γη 4 Άσκηση
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 10: Ταξινόμηση Πίνακα Αναζήτηση σε Ταξινομημένο Πίνακα Πρόβλημα Δίνεται πίνακας t από Ν ακεραίους. Ζητούμενο: να ταξινομηθούν τα περιεχόμενα του πίνακα σε αύξουσα αριθμητική
Διαβάστε περισσότεραυναμικός Προγραμματισμός
υναμικός Προγραμματισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιωνυμικοί Συντελεστές ιωνυμικοί
Διαβάστε περισσότεραΔιατάξεις με επανάληψη: Με πόσους τρόπους μπορώ να διατάξω r από n αντικείμενα όταν επιτρέπονται επαναληπτικές εμφανίσεις των αντικειμένων; Στην αρχή
Στοιχειώδης συνδυαστική Συνδυασμοί και διατάξεις με επανάληψη Διατάξεις με επανάληψη: Με πόσους τρόπους μπορώ να διατάξω r από n αντικείμενα όταν επιτρέπονται επαναληπτικές εμφανίσεις των αντικειμένων;
Διαβάστε περισσότεραΔιαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1
Διαίρει-και-Βασίλευε Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική μέθοδος
Διαβάστε περισσότεραεπιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S
Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών,, τα οποίo είναι υποσύνολο του. Υποστηριζόμενες λειτουργίες αναζήτηση(s,x): εισαγωγή(s,x): διαγραφή(s,x): διάδοχος(s,x): προκάτοχος(s,x):
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις /προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές
Διαβάστε περισσότεραΜη γράφετε στο πίσω μέρος της σελίδας
Εισαγωγή στο Σχεδιασμό & την Ανάλυση Αλγορίθμων Εξέταση Σεπτεμβρίου 2015 Σελ. 1 από 8 Στη σελίδα αυτή γράψτε μόνο τα στοιχεία σας. Γράψτε τις απαντήσεις σας στις επόμενες σελίδες, κάτω από τις αντίστοιχες
Διαβάστε περισσότεραΜη γράφετε στο πίσω μέρος της σελίδας
Εισαγωγή στο Σχεδιασμό & την Ανάλυση Αλγορίθμων Εξέταση Φεβρουαίου 2015 Σελ. 1 από 7 Στη σελίδα αυτή γράψτε μόνο τα στοιχεία σας. Γράψτε τις απαντήσεις σας στις επόμενες σελίδες, κάτω από τις αντίστοιχες
Διαβάστε περισσότεραΞέρουμε ότι: Συνάρτηση-απεικόνιση με πεδίο ορισμού ένα σύνολο Α και πεδίο τιμών ένα σύνολο Β είναι κάθε μονοσήμαντη απεικόνιση f του Α στο Β.
Η έννοια της ακολουθίας Ξέρουμε ότι: Συνάρτηση-απεικόνιση με πεδίο ορισμού ένα σύνολο Α και πεδίο τιμών ένα σύνολο Β είναι κάθε μονοσήμαντη απεικόνιση f του Α στο Β. Δηλαδή: f : A B Η ακολουθία είναι συνάρτηση.
Διαβάστε περισσότεραΤεχνικές Σχεδιασμού Αλγορίθμων
Τεχνικές Σχεδιασμού Αλγορίθμων Διαίρει και Βασίλευε Δυναμικός Προγραμματισμός Απληστία Π. Μποζάνης ΤHMMY - Αλγόριθμοι 2014-2015 1 Διαίρει και Βασίλευε Βασικά Βήματα Διαίρει: Κατάτμηση του αρχικού προβλήματος
Διαβάστε περισσότεραΑλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων
Τεχνικές Σχεδιασµού Αλγορίθµων Αλγόριθµοι Παύλος Εφραιµίδης pefraimi@ee.duth.gr Ορισµένες γενικές αρχές για τον σχεδιασµό αλγορίθµων είναι: ιαίρει και Βασίλευε (Divide and Conquer) υναµικός Προγραµµατισµός
Διαβάστε περισσότεραΔιαχείριση Εφοδιαστικής Αλυσίδας ΙΙ
Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ 1 η Διάλεξη: Αναδρομή στον Μαθηματικό Προγραμματισμό 2019, Πολυτεχνική Σχολή Εργαστήριο Συστημάτων Σχεδιασμού, Παραγωγής και Λειτουργιών Περιεχόμενα 1. Γραμμικός Προγραμματισμός
Διαβάστε περισσότεραΔιαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2
Διαίρει-και-Βασίλευε Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Γενική µέθοδος σχεδιασµού αλγορίθµων: Διαίρεση σε ( 2) υποπροβλήµατα (σηµαντικά) µικρότερου µεγέθους.
Διαβάστε περισσότεραυναμικός Προγραμματισμός
υναμικός Προγραμματισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιωνυμικοί Συντελεστές ιωνυμικοί
Διαβάστε περισσότεραυναμικός Προγραμματισμός
υναμικός Προγραμματισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιακριτό Πρόβλημα Σακιδίου ίνονται n αντικείμενα και σακίδιο μεγέθους Β. Αντικείμενο
Διαβάστε περισσότεραΆπληστοι Αλγόριθμοι. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Άπληστοι Αλγόριθμοι ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άπληστοι Αλγόριθμοι... για προβλήματα
Διαβάστε περισσότεραΔιαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 12 η Αναζήτηση/Ταξινόμηση Πίνακα Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην
Διαβάστε περισσότεραΔιακριτά Μαθηματικά. Απαρίθμηση: Διωνυμικοί συντελεστές
Διακριτά Μαθηματικά Απαρίθμηση: Διωνυμικοί συντελεστές Συνδυασμοί Το πλήθος των συνδυασμών r από n στοιχεία, C(n,r) συμβολίζεται και ως Ο αριθμός αυτός λέγεται και διωνυμικός συντελεστής Οι αριθμοί αυτοί
Διαβάστε περισσότεραΆπληστοι Αλγόριθµοι. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1
Άπληστοι Αλγόριθµοι Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1 Άπληστοι Αλγόριθµοι... για προβλήµατα βελτιστοποίησης: Λειτουργούν σε βήµατα. Κάθε βήµα κάνει µια αµετάκλητη επιλογή
Διαβάστε περισσότεραa n + 6a n a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8
Διακριτά Μαθηματικά Σχέσεις Αναδρομής Ι 1 / 17 a n + 6a n 1 + 12a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8 2 / 17 a n + 6a n 1 + 12a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8 1ος τρόπος: Εχουμε τη
Διαβάστε περισσότεραΚατ οίκον Εργασία 1 Σκελετοί Λύσεων
EΠΛ Αλγόριθµοι και Πολυπλοκότητα Φεβρουάριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων. Ο αλγόριθµος διαίρει και βασίλευε για το πρόβληµα έχει ως εξής: Μοίρασε τον πίνακα σε δύο µισά. Υπολόγισε αναδροµικά τα
Διαβάστε περισσότεραi=1 i=1 i=1 (x i 1, x i +1) (x 1 1, x k +1),
Κεφάλαιο 6 Συμπάγεια 6.1 Ορισμός της συμπάγειας Οπως θα φανεί στην αμέσως επόμενη παράγραφο, υπάρχουν διάφοροι τρόποι με τους οποίους μπορεί κανείς να εισάγει την έννοια του συμπαγούς μετρικού χώρου. Ο
Διαβάστε περισσότεραγια NP-Δύσκολα Προβλήματα
Προσεγγιστικοί Αλγόριθμοι για NP-Δύσκολα Προβλήματα Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο
Διαβάστε περισσότεραΑλγόριθμοι και πολυπλοκότητα Δυναμικός Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αλγόριθμοι και πολυπλοκότητα Δυναμικός Προγραμματισμός Ιωάννης Τόλλης Τμήμα Επιστήμης Υπολογιστών Δυναμικός Προγραμματισμός Δυναμικός Προγραμματισμός 1 Περίληψη
Διαβάστε περισσότεραΜέθοδος μέγιστης πιθανοφάνειας
Αν x =,,, παρατηρήσεις των Χ =,,,, τότε έχουμε διαθέσιμο ένα δείγμα Χ={Χ, =,,,} της κατανομής F μεγέθους με από κοινού σκ της Χ f x f x Ορισμός : Θεωρούμε ένα τυχαίο δείγμα Χ=(Χ, Χ,, Χ ) από πληθυσμό το
Διαβάστε περισσότεραΔυναμική Διατήρηση Γραμμικής Διάταξης
Διατηρεί μια γραμμική διάταξη δυναμικά μεταβαλλόμενης συλλογής στοιχείων. Υποστηρίζει τις λειτουργίες: Εισαγωγή νέου στοιχείου y αμέσως μετά από το στοιχείο x. x y Διαγραφή στοιχείου y. y Έλεγχος της σειράς
Διαβάστε περισσότεραΆπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17)
Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε Άπληστους Αλγόριθµους Στοιχεία άπληστων αλγορίθµων Το πρόβληµα επιλογής εργασιών ΕΠΛ 232
Διαβάστε περισσότεραf(t) = (1 t)a + tb. f(n) =
Παράρτημα Αʹ Αριθμήσιμα και υπεραριθμήσιμα σύνολα Αʹ1 Ισοπληθικά σύνολα Ορισμός Αʹ11 (ισοπληθικότητα) Εστω A, B δύο μη κενά σύνολα Τα A, B λέγονται ισοπληθικά αν υπάρχει μια συνάρτηση f : A B, η οποία
Διαβάστε περισσότεραΑλγοριθμικές Τεχνικές. Brute Force. Διαίρει και Βασίλευε. Παράδειγμα MergeSort. Παράδειγμα. Τεχνικές Σχεδιασμού Αλγορίθμων
Τεχνικές Σχεδιασμού Αλγορίθμων Αλγοριθμικές Τεχνικές Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr Ορισμένες γενικές αρχές για τον σχεδιασμό αλγορίθμων είναι: Διαίρει και Βασίλευε (Divide and
Διαβάστε περισσότεραΆπληστοι Αλγόριθμοι. Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Άπληστοι Αλγόριθμοι Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άπληστοι Αλγόριθμοι... για προβλήματα
Διαβάστε περισσότερα4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 3/2/ / 37
4η Γραπτή Άσκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Άσκηση 3/2/2019 1 / 37 Άσκηση 1 Πρέπει να βρούμε όλες τις καλές προτάσεις φίλων για τον i ανάμεσα σε όλους
Διαβάστε περισσότεραΔομές Δεδομένων. Τι είναι η δομή δεδομένων; Έστω η ακολουθία αριθμών: 8, 10,17,19,22,5,12 Λογικό Επίπεδο. Φυσικό Επίπεδο RAM. Ταξινομημένος.
Δομές Δεδομένων Τι είναι η δομή δεδομένων; Έστω η ακολουθία αριθμών: 8, 10,17,19,22,5,12 Λογικό Επίπεδο Φυσικό Επίπεδο RAM Πίνακας 8 10 17 19 22 Ταξινομημένος Πίνακας 5 8 10 12 17 Δένδρο 8 5 10 12 19 17
Διαβάστε περισσότεραΕισαγωγή στους Αλγορίθμους Ενότητα 11η
Εισαγωγή στους Αλγορίθμους Ενότητα 11η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Δυναμικός Προγραμματισμός Σταθμισμένος Χρονοπρογραμματισμός
Διαβάστε περισσότεραΑλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.
Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων CO.RE.LAB. ΣΗΜΜΥ - Ε.Μ.Π. Άσκηση 1 η : Παιχνίδι επιλογής ακμών Έχουμε ένα ακυκλικό κατευθυνόμενο γράφο, μια αρχική κορυφή και δυο παίκτες. Οι παίκτες διαδοχικά
Διαβάστε περισσότεραΣχεδίαση Αλγορίθμων -Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο
Πολλαπλασιασμός μεγάλων ακεραίων (1) Για να πολλαπλασιάσουμε δύο ακεραίους με n 1 και n 2 ψηφία με το χέρι, θα εκτελέσουμε n 1 n 2 πράξεις πολλαπλασιασμού Πρόβλημα ρβημ όταν έχουμε πολλά ψηφία: A = 12345678901357986429
Διαβάστε περισσότεραΠληροφορική 2. Αλγόριθμοι
Πληροφορική 2 Αλγόριθμοι 1 2 Τι είναι αλγόριθμος; Αλγόριθμος είναι ένα διατεταγμένο σύνολο από σαφή βήματα το οποίο παράγει κάποιο αποτέλεσμα και τερματίζεται σε πεπερασμένο χρόνο. Ο αλγόριθμος δέχεται
Διαβάστε περισσότεραΑλγοριθμικές Τεχνικές
Αλγοριθμικές Τεχνικές Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr Αλγοριθμικές Τεχνικές 1 Τεχνικές Σχεδιασμού Αλγορίθμων Ορισμένες γενικές αρχές για τον σχεδιασμό αλγορίθμων είναι: Διαίρει και
Διαβάστε περισσότεραΆπληστοι Αλγόριθμοι. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Άπληστοι Αλγόριθμοι ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άπληστοι Αλγόριθμοι... για προβλήματα
Διαβάστε περισσότεραΠροσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα
Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια
Διαβάστε περισσότεραΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ
1 ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ Φροντιστήριο #10: Αλγόριθμοι Διαίρει & Βασίλευε: Master Theorem, Αλγόριθμοι Ταξινόμησης, Πιθανοτικός
Διαβάστε περισσότερα4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 7 Φεβρουαρίου / 38
4η Γραπτή Άσκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Άσκηση 7 Φεβρουαρίου 2017 1 / 38 Άσκηση 1 Πρέπει να βρούμε όλες τις καλές προτάσεις φίλων για τον
Διαβάστε περισσότεραΔιακριτά Μαθηματικά. Απαρίθμηση: Διωνυμικοί συντελεστές
Διακριτά Μαθηματικά Απαρίθμηση: Διωνυμικοί συντελεστές Συνδυασμοί Το πλήθος των συνδυασμών r από n στοιχεία, C(n,r) συμβολίζεται και ως Ο αριθμός αυτός λέγεται και διωνυμικός συντελεστής Οι αριθμοί αυτοί
Διαβάστε περισσότεραAPEIROSTIKOS LOGISMOS I
APEIROSTIKOS LOGISOS I ΟΛΟΗΜΕΡΟ ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΒΛΗΜΑΤΩΝ Λύσεις ασκήσεων φυλλαδίου. Άσκηση : Αποδείξτε με τον ορισμό ότι:. lim ( ) = +,. lim =,. lim ln( + ) = ln, + 4. lim + =. Λύση:. Θεωρούμε αυθαίρετο
Διαβάστε περισσότεραn ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4
Διακριτά Μαθηματικά Ι Επαναληπτικό Μάθημα 1 Συνδυαστική 2 Μεταξύ 2n αντικειμένων, τα n είναι ίδια. Βρείτε τον αριθμό των επιλογών n αντικειμένων από αυτά τα 2n αντικείμενα. Μεταξύ 3n + 1 αντικειμένων τα
Διαβάστε περισσότεραΣχεδίαση & Ανάλυση Αλγορίθμων
Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 3 Αλγόριθμοι Επιλογής Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Αλγόριθμοι Επιλογής Γνωρίζουμε
Διαβάστε περισσότεραΚατακερματισμός (Hashing)
Κατακερματισμός (Hashing) O κατακερματισμός είναι μια τεχνική οργάνωσης ενός αρχείου. Είναι αρκετά δημοφιλής μέθοδος για την οργάνωση αρχείων Βάσεων Δεδομένων, καθώς βοηθάει σημαντικά στην γρήγορη αναζήτηση
Διαβάστε περισσότεραΓενικευμένες Μεταθέσεις και Συνδυασμοί
Γενικευμένες Μεταθέσεις και Συνδυασμοί Διατάξεις και Συνδυασμοί όταν υπάρχουν πολλαπλά αντίγραφα των αντικειμένων Μέχρι τώρα Μετράγαμε τρόπους να διαλέξουμε (συνδυασμούς) ή να διαλέξουμε και να βάλουμε
Διαβάστε περισσότεραΠρόβλημα 1 «Φασίνα» Εύρεση εκτέλεσης εργασιών με τον μικρότερο συνολικό χρόνο
ΦΡΟΝΤΙΣΤΗΡΙΟ 2 /4/206 Πρόβλημα «Φασίνα» Εύρεση εκτέλεσης εργασιών με τον μικρότερο συνολικό χρόνο Έστω ότι θέλουμε να καθαρίσουμε το σπίτι. Για λόγους μείωσης πολυπλοκότητας θεωρούμε ότι θέλουμε να καθαρίσουμε
Διαβάστε περισσότεραΕπιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Διαίρει-και-Βασίλευε Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική
Διαβάστε περισσότεραΔιωνυµικοί Συντελεστές. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1
Διωνυµικοί Συντελεστές Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1 Διωνυµικοί Συντελεστές Διωνυµικοί συντελεστές Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός
Διαβάστε περισσότεραApproximation Algorithms for the k-median problem
Approximation Algorithms for the k-median problem Ζακυνθινού Λυδία Παυλάκος Γεώργιος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Θεωρία Υπολογισμού 2011-2012 Το πρόβλημα
Διαβάστε περισσότεραΤεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/
Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας
Διαβάστε περισσότεραΤαξινόμηση. Σαλτογιάννη Αθανασία
Ταξινόμηση Σαλτογιάννη Αθανασία Ταξινόμηση Ταξινόμηση Τι εννοούμε όταν λέμε ταξινόμηση; Ταξινόμηση Τι εννοούμε όταν λέμε ταξινόμηση; Ποια είδη αλγορίθμων ταξινόμησης υπάρχουν; Ταξινόμηση Τι εννοούμε όταν
Διαβάστε περισσότεραn 5 = 7 ε (π.χ. ορίζοντας n0 = 1+ ε συνεπώς (σύμϕωνα με τις παραπάνω ισοδυναμίες) an 5 < ε. Επομένως a n β n 23 + β n+1
Θέμα 1 (α) Υποθέτουμε (προς απαγωγή σε άτοπο) ότι το σύνολο A έχει μέγιστο στοιχείο, έστω a = max A Τότε, εϕόσον a A, έχουμε a R Q και a M Ομως ο αριθμός μητρώου M είναι ρητός αριθμός, άρα (εϕόσον ο a
Διαβάστε περισσότεραΑπειροστικός Λογισμός Ι Ασκήσεις
Απειροστικός Λογισμός Ι Ασκήσεις Μ. Παπαδημητράκης . Για καθεμία από τις ανισότητες ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ + >, +, + > +3 3+, ( )( 3) ( ) 0 γράψτε ως διάστημα ή ως ένωση διαστημάτων το σύνολο
Διαβάστε περισσότεραΛύσεις Διαγωνισμάτος 1 Ενότητα: Ακολουθίες-Σειρές
Τμήμα Μηχανικών Οικονομίας και Διοίκησης Απειροστικός Λογισμός ΙΙ Γ. Καραγιώργος ykarag@aegea.gr Λύσεις Διαγωνισμάτος Ενότητα: Ακολουθίες-Σειρές Άσκηση. Έστω ακολουθία (a ), για την οποία ισχύει ότι Θεωρούμε
Διαβάστε περισσότεραΕισαγωγή στους Αλγορίθμους Ενότητα 8η
Εισαγωγή στους Αλγορίθμους Ενότητα 8η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άπληστοι Αλγόριθμοι Χρονοπρογραμματισμός
Διαβάστε περισσότεραΑσκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» (ε) Κάθε συγκλίνουσα ακολουθία άρρητων αριθµών συγκλίνει σε άρρητο αριθµό.
Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» Κεφάλαιο : Ακολουθίες πραγµατικών αριθµών Α Οµάδα Εξετάστε αν οι παρακάτω προτάσεις είναι αληθείς ή ψευδείς αιτιολογήστε πλήρως την απάντησή σας α Κάθε
Διαβάστε περισσότεραΑλγόριθμοι και Πολυπλοκότητα
Αλγόριθμοι και Πολυπλοκότητα Διαίρει και Βασίλευε Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαίρει και Βασίλευε Divide and Conquer Η τεχνική διαίρει και βασίλευε αναφέρεται
Διαβάστε περισσότεραΕλάχιστο Γεννητικό Δένδρο. Παράδειγμα - Αλγόριθμος Prim. Γιατί δουλεύουν αυτοί οι αλγόριθμοι;
Άπληστοι Αλγόριθμοι ΙΙI Αλγόριθμοι γραφημάτων Ελάχιστο Γεννητικό Δένδρο Παράδειγμα Κατασκευή δικτύων Οδικά, επικοινωνίας Έχουμε ένα συνεκτικό γράφημα (V,E) και ένας βάρος we σε κάθε ακμή e. Να βρεθεί υποσύνολο
Διαβάστε περισσότεραΔιακριτά Μαθηματικά. Απαρίθμηση: Γενικευμένες Μεταθέσεις και Συνδυασμοί
Διακριτά Μαθηματικά Απαρίθμηση: Γενικευμένες Μεταθέσεις και Συνδυασμοί Διατάξεις και Συνδυασμοί όταν υπάρχουν πολλαπλά αντίγραφα των αντικειμένων Μέχρι τώρα Μετράγαμε τρόπους να διαλέξουμε (συνδυασμούς)
Διαβάστε περισσότεραΕπίλυση Προβλημάτων και Τεχνικές Αναζήτησης Εισαγωγή
Επίλυση Προβλημάτων και Τεχνικές Αναζήτησης Εισαγωγή επίλυση προβλημάτων μέσω αναζήτησης κάθε πρόβλημα το οποίο μπορεί να διατυπωθεί αυστηρά λύνεται μέσω αναζήτησης. Για τα περισσότερα ενδιαφέροντα προβλήματα
Διαβάστε περισσότεραΣυνδυαστική Βελτιστοποίηση Εισαγωγή στον γραμμικό προγραμματισμό (ΓΠ)
Ανάλυση Ευαισθησίας. Έχοντας λύσει ένας πρόβλημα ΓΠ θα πρέπει να αναρωτηθούμε αν η λύση έχει φυσική σημασία. Είναι επίσης πολύ πιθανό να έχουμε χρησιμοποιήσει δεδομένα για τα οποία δεν είμαστε σίγουροι
Διαβάστε περισσότεραΔιάλεξη 04: Παραδείγματα Ανάλυσης
Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
- Πίνακες 1 Πίνακες Οι πίνακες έχουν σταθερό μέγεθος και τύπο δεδομένων. Βασικά πλεονεκτήματά τους είναι η απλότητα προγραμματισμού τους και η ταχύτητα. Ωστόσο δεν παρέχουν την ευελιξία η οποία απαιτείται
Διαβάστε περισσότεραΘεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής
Θεωρία Παιγνίων και Αποφάσεων Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Παίγνια μηδενικού αθροίσματος PessimisIc play Αμιγείς max-min και
Διαβάστε περισσότεραΕΠΛ 232: Αλγόριθµοι και Πολυπλοκότητα. Κατ οίκον Εργασία 1 Σκελετοί Λύσεων
ΕΠΛ 22: Αλγόριθµοι και Πολυπλοκότητα Κατ οίκον Εργασία Σκελετοί Λύσεων. (α) Έστω δροµολόγηση e, e 2,, e των εργασιών, 2,,. Τότε οι χρόνοι συµπλήρωσης των εργασιών είναι e d e e 2 d e + d e 2 e d e + d
Διαβάστε περισσότεραΑΝΑΛΥΣΗ 1 ΔΩΔΕΚΑΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης.
ΑΝΑΛΥΣΗ 1 ΔΩΔΕΚΑΤΟ ΜΑΘΗΜΑ, 1-11-13 Μ. Παπαδημητράκης. 1 Άσκηση 2.2.7. Έστω ϵ 0 > 0. Αποδείξτε ότι x n x αν και μόνο αν για κάθε ϵ με 0 < ϵ ϵ 0 ισχύει τελικά x n N x ϵ). Λύση: Έχουμε να αποδείξουμε την
Διαβάστε περισσότεραP(n, r) = n r. (n r)! n r. n+r 1
Διακριτά Μαθηματικά Φροντιστήριο Στοιχειώδης Συνδυαστική ΙΙ 1 / 15 Επανάληψη Κανόνας Αθροίσματος Κανόνας Γινομένου Χωρίς επαναλήψεις στοιχείων P(n, r) = n! (n r)! C(n, r) = ( ) n r Με επαναλήψεις στοιχείων
Διαβάστε περισσότεραΔιακριτά Μαθηματικά. Απαρίθμηση: Γενικευμένες Μεταθέσεις και Συνδυασμοί
Διακριτά Μαθηματικά Απαρίθμηση: Γενικευμένες Μεταθέσεις και Συνδυασμοί Διατάξεις και Συνδυασμοί με απλά ή πολλαπλά αντίγραφα στοιχείων Διατάξεις Διάλεξε και βάλε σε σειρά 1 αντίγραφο κάθε στοιχείου n*n-1*n-2*
Διαβάστε περισσότεραΣύνοψη Προηγούμενου. Πίνακες (Arrays) Πίνακες (Arrays): Βασικές Λειτουργίες. Πίνακες (Arrays) Ορέστης Τελέλης
Σύνοψη Προηγούμενου Πίνακες (Arrays Ορέστης Τελέλης telelis@unipi.gr Τμήμα Ψηφιακών Συστημάτων, Πανεπιστήμιο Πειραιώς Διαδικαστικά θέματα. Aντικείμενο Μαθήματος. Aντικείμενα, Κλάσεις, Μέθοδοι, Μεταβλητές.
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 8 Ο. Ταξινόμηση και Αναζήτηση Συναρτήσεις χειρισμού οθόνης ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 8 Ο Ταξινόμηση και Αναζήτηση Συναρτήσεις χειρισμού οθόνης ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Εισαγωγή Η τακτοποίηση των δεδομένων με ιδιαίτερη σειρά είναι πολύ σημαντική λειτουργία που ονομάζεται
Διαβάστε περισσότεραΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2-Γ3
ΑΡΧΗ 1ης ΣΕΛΙ ΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2-Γ3 ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΦΕΒΡΟΥΑΡΙΟΥ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ
Διαβάστε περισσότεραΕιδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις
Διαβάστε περισσότεραΠροσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα
Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αντιμετώπιση NP- υσκολίας Αν P NP, όχι αλγόριθμος
Διαβάστε περισσότεραΔομές Δεδομένων. Δημήτρης Μιχαήλ. Ταξινόμηση. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Δομές Δεδομένων Ταξινόμηση Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Το πρόβλημα Είσοδος n αντικείμενα a 1, a 2,..., a n με κλειδιά (συνήθως σε ένα πίνακα, ή λίστα, κ.τ.λ)
Διαβάστε περισσότεραΤαχεία Ταξινόμηση Quick-Sort
Ταχεία Ταξινόμηση Quc-Sort 7 4 9 6 2 2 4 6 7 9 4 2 2 4 7 9 7 9 2 2 9 9 Δομές Δεδομένων και Αλγόριθμοι Εργαστήριο Γνώσης και Ευφυούς Πληροφορικής 1 Outlne Quc-sort Αλγόριθμος Βήμα διαχωρισμού Δένδρο Quc-sort
Διαβάστε περισσότεραΣυντομότερες Διαδρομές
Συντομότερες Διαδρομές Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Συντομότερη Διαδρομή Κατευθυνόμενο G(V, E, w) με μήκη Μήκος διαδρομής
Διαβάστε περισσότεραΜη γράφετε στο πίσω μέρος της σελίδας
Διακριτά Μαθηματικά Τελική Εξέταση Απρίλιος 204 Σελ. από 5 Στη σελίδα αυτή γράψτε μόνο τα στοιχεία σας. Γράψτε τις απαντήσεις σας στις επόμενες σελίδες, κάτω από τις αντίστοιχες ερωτήσεις. Στις απαντήσεις
Διαβάστε περισσότεραΠροσεγγιστικοί Αλγόριθμοι
Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)
Διαβάστε περισσότερα