Σχεδίαση & Ανάλυση Αλγορίθμων

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Σχεδίαση & Ανάλυση Αλγορίθμων"

Transcript

1 Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 1 Αλγόριθμοι και Πολυπλοκότητα Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage:

2 Εισαγωγή Ας ξεκινήσουμε

3 Εισαγωγή Δημιουργούνται επομένως ερωτήματα όπως:

4 Εισαγωγή Τι είναι Αλγόριθμος? Αλγόριθμος Μέθοδος για την επίλυση ενός προβλήματος Δομή Δεδομένων Μέθοδος αποθήκευσης δεδομένων

5 Εισαγωγή Αλγόριθμος Πολλαπλασιασμού

6 Εισαγωγή Οι αλγόριθμοι προϋπάρχουν των υπολογιστών Αλγόριθμος του Ευκλείδη Αλγόριθμος του Ευκλείδη για υπολογισμό του μέγιστου κοινού διαιρέτη Βασίζεται στον κανόνα όπου είναι θετικοί ακέραιοι int Euclid(int x, int y) { if y==0 return x; return Euclid(y, x%y); } Παράδειγμα Euclid (128,40)= Euclid (40,8)= Euclid (8,0)= 8 Ευκλείδης (300 πχ)

7 Εισαγωγή Προβλήματα και Στιγμιότυπα Ορθότητα

8 Εισαγωγή Ορθότητα

9 Εισαγωγή Πολυπλοκότητα

10 Εισαγωγή Πολυπλοκότητα Πολυπλοκότητα Αλγόριθμου Άνω Φράγμα του Π = Απόδειξη ενός ελάχιστου χρόνου για την επίλυση του προβλήματος Π Κάτω Φράγμα του Π Βέλτιστος (optimal) Αλγόριθμος

11 Εισαγωγή Πρόβλημα Π Αλγόριθμος Άνω Φράγμα του προβλήματος Π Το Π απαιτεί χρόνο το ΠΟΛΥ T 1 (n)

12 Εισαγωγή Πρόβλημα Π Αλγόριθμος Άνω Φράγμα του προβλήματος Π Το Π απαιτεί χρόνο το ΠΟΛΥ T 1 (n) Το Π απαιτεί χρόνο ΤΟΥΛΑΧΙΣΤΟ T 2 (n) Θεώρημα Κάτω Φράγμα του προβλήματος Π

13 Εισαγωγή Πρόβλημα Π Αλγόριθμος Άνω Φράγμα του προβλήματος Π Το Π απαιτεί το χρόνο το ΠΟΛΥ T(n) Το Π απαιτεί το χρόνο ΤΟΥΛΑΧΙΣΤΟ T(n) Θεώρημα Κάτω Φράγμα του προβλήματος Π Βέλτιστος Αλγόριθμος

14 Εισαγωγή Πολυπλοκότητα Εμπειρική Θεωρητική!!!!!!!

15 Εισαγωγή Πολυπλοκότητα Εμπειρική

16 Αποτελεσματικότητα Αλγορίθμου Θεωρητική Πολυπλοκότητα

17 Αποτελεσματικότητα Αλγορίθμου Πολυπλοκότητα

18 Αποτελεσματικότητα Αλγορίθμου Εστιάζω στο Χρόνο Πολυπλοκότητα

19 Αποτελεσματικότητα Αλγορίθμου Πολυπλοκότητα

20 Αποτελεσματικότητα Αλγορίθμου Πλεονεκτήματα Θεωρητική Προσέγγισης Ερώτημα

21 Βασικές Πράξεις Βασική Πράξη

22 Βασικές Πράξεις n-1 βασικές πράξεις

23 Βασικές Πράξεις

24 Βασικές Πράξεις α) [1, 3, 5, 2, 9, 7] b) [9, 3,7, 2, 1, 5] c) [5, 7, 1, 2, 9, 3] d) [7, 9, 5, 2, 3, 1] max = 9 Το πλήθος των συγκρίσεων S[i] > max είναι το ίδιο!!!

25 Βασικές Πράξεις α) [1, 3, 5, 2, 9, 7] x = 5 b) [9, 3,7, 2, 1, 5] c) [5, 7, 1, 2, 9, 3] d) [7, 9, 2, 4, 3, 1] Το πλήθος των συγκρίσεων S[index] <> x ΔΕΝ είναι το ίδιο!!!

26 Πολυπλοκότητα Χρόνου

27 Πολυπλοκότητα Χρόνου

28 Πολυπλοκότητα Χρόνου

29 Πολυπλοκότητα Χρόνου

30 Πολυπλοκότητα Χρόνου

31 Πολυπλοκότητα Χρόνου

32 Πολυπλοκότητα Χρόνου

33 Πολυπλοκότητα Χρόνου

34 Πολυπλοκότητα Χρόνου 1 Πρόβλημα: Εύρεση του max στοιχείου Αλγόριθμος: Find_Max-1

35 1 Πολυπλοκότητα Χρόνου

36 Πολυπλοκότητα Χρόνου 2 Πρόβλημα: Εύρεση του max στοιχείου Αλγόριθμος: Find_Max-2

37 2 Πολυπλοκότητα Χρόνου

38 Πολυπλοκότητα Χρόνου 3 Πρόβλημα: Εύρεση του min-max στοιχείων Αλγόριθμος: Find_Min_Max-1

39 3 Πολυπλοκότητα Χρόνου

40 Πολυπλοκότητα Χρόνου 4 Πρόβλημα: Εύρεση του min-max στοιχείων Αλγόριθμος: Find_Min_Max-2

41 4 Πολυπλοκότητα Χρόνου

42 Πολυπλοκότητα Χρόνου 5 Πρόβλημα: Εύρεση δεύτερου max στοιχείου Αλγόριθμος: Find_Second_Max-1

43 5 Πολυπλοκότητα Χρόνου

44 Πολυπλοκότητα Χρόνου 6 Πρόβλημα: Εύρεση δεύτερου max στοιχείου Αλγόριθμος: Find_Second_Max-2

45 Πολυπλοκότητα Χρόνου

46 Ασυμπτωτική Πολυπλοκότητα Έως τώρα Ερώτημα Επόμενο Εύλογο Ερώτημα Υπολογισμός του πλήθους των Βασικών Πράξεων ενός αλγόριθμου - W(n) και A(n) Μήπως με αυτή την προσέγγιση της πολυπλοκότητα υπεισέρχονται στον υπολογισμό μας και παράγοντες οι οποίοι δεν μας διευκολύνουν να εκτιμήσουμε την αποτελεσματικότητα ενός αλγόριθμου; Είναι οι παράγοντες αυτοί τόσο σημαντικοί ώστε να μην μπορούν να αγνοηθούν;

47 Ασυμπτωτική Πολυπλοκότητα Ας αναφερθούμε στο πρώτο ερώτημα. Έστω Αλγόριθμος Α με πολυπλοκότητα W(n) = n 3 / 4 Αλγόριθμος B με πολυπλοκότητα W(n) = 10 n 2 Ισχύει n 3 / 4 < 10 n 2 για n < 40 Τότε Ο αλγόριθμος Α είναι αποτελεσματικότερος του Β. Όμως Χωρίς δυσκολία, παρατηρούμε ότι για μεγάλες τιμές του n (μέγεθος εισόδου) ο αλγόριθμος Β είναι πολύ πιο αποτελεσματικός από τον αλγόριθμο Α.

48 Πολυπλοκότητα Αλγορίθμου Παράδειγμα 3n 3 ΒΠ n ΒΠ Πρόβλημα π

49 Ασυμπτωτική Πολυπλοκότητα Από το παραπάνω παράδειγμα γίνεται σαφές ότι: Χρειαζόμαστε ένα τρόπο να εξασφαλίσουμε μερικές κατηγορίες συναρτήσεων οι οποίες ΕΞΑΛΕΙΦΟΥΝ ΜΗ-ΣΗΜΑΝΤΙΚΟΥΣ ΠΑΡΑΓΟΝΤΕΣ όπως σταθερές, μικρού μεγέθους εισόδους, κλπ.

50 Ασυμπτωτική Πολυπλοκότητα

51 Ασυμπτωτική Πολυπλοκότητα

52 Ασυμπτωτική Πολυπλοκότητα

53 Ασυμπτωτική Πολυπλοκότητα

54 Ασυμπτωτική Πολυπλοκότητα

55 Ασυμπτωτική Πολυπλοκότητα

56 Ασυμπτωτική Πολυπλοκότητα

57 Ασυμπτωτική Πολυπλοκότητα

58 Ασυμπτωτική Πολυπλοκότητα

59 Ασυμπτωτική Πολυπλοκότητα

60 Ασυμπτωτική Πολυπλοκότητα

61 Ασυμπτωτική Πολυπλοκότητα

62 Ασυμπτωτική Πολυπλοκότητα Πολυπλοκότητα Ο(n 3 ) Πολυπλοκότητα Ο(n) Πρόβλημα π

63 Ασυμπτωτική Πολυπλοκότητα Αλγόριθμος: Find_Min_Max-1 W(n) = Ο(n) A(n) = Ο(n)

64 Ασυμπτωτική Πολυπλοκότητα Αλγόριθμος: Find_Min_Max-2 W(n) = Ο(n) A(n) = Ο(n)

65 Ασυμπτωτική Πολυπλοκότητα Αλγόριθμος: MinMax W(n) =??????

66 Ασυμπτωτική Πολυπλοκότητα Αναδρομική Σχέση

67 Αναδρομικές Σχέσεις Επίλυση Αναδρομικών Σχέσεων Επίλυση με Μαντεψιά Με Χρήση της Χαρακτηριστικής Εξίσωσης Με Επαναληπτική Αντικατάσταση Κύρια Μέθοδος (Master Method)

68 Αναδρομικές Σχέσεις Επίλυση της Αναδρομικής Σχέσης

69 Αναδρομικές Σχέσεις

70 Αναδρομικές Σχέσεις

71 Αναδρομικές Σχέσεις

72 Αναδρομικές Σχέσεις

73 Αναδρομικές Σχέσεις Επίλυση της Αναδρομικής Σχέσης

74 Αναδρομικές Σχέσεις

75 Αναδρομικές Σχέσεις

76 Αναδρομικές Σχέσεις

77 Αναδρομικές Σχέσεις Επίλυση της Αναδρομικής Σχέσης

78 Αναδρομικές Σχέσεις

79 Αναδρομικές Σχέσεις

80 Κύρια Μέθοδος ή Κύριο Θεώρημα Κύρια Μέθοδος (Master Method)

81 Κύρια Μέθοδος ή Κύριο Θεώρημα

82 Κύρια Μέθοδος ή Κύριο Θεώρημα Θεωρούμε ότι:

83 Κύρια Μέθοδος ή Κύριο Θεώρημα 1 εάν 2 εάν 3 εάν!!!

84 Κύρια Μέθοδος ή Κύριο Θεώρημα Παράδειγμα 1: και Ισχύει : 2

85 Κύρια Μέθοδος ή Κύριο Θεώρημα Παράδειγμα 2: και Ισχύει : 2

86 Κύρια Μέθοδος ή Κύριο Θεώρημα Παράδειγμα 3: και Ισχύει : 3

87 Κύρια Μέθοδος ή Κύριο Θεώρημα Παράδειγμα 4:??????

88 Κύρια Μέθοδος ή Κύριο Θεώρημα Παράδειγμα 4:

89 Άνω και Κάτω φράγματα Πρόβλημα Π?????? Αλγόριθμος Πόσο αποτελεσματικός είναι ο Αλγόριθμος που σχεδίασα για το πρόβλημα Π?

90 Άνω και Κάτω φράγματα Πολυπλοκότητα Αλγόριθμος Άνω Φράγμα του Π Κάτω Φράγμα του Π Θεώρημα Βέλτιστος Αλγόριθμος

91 Άνω και Κάτω φράγματα Πόσο αποτελεσματικός είναι ο Αλγόριθμος Α που επιλύει το Πρόβλημα Π? Πρόβλημα P Ανέλυσε τον αλγόριθμο Α και υπολόγισε μια συνάρτηση W A τέτοια ώστε: για κάθε είσοδο Ι μήκους n, Α απαιτεί το πολύ W A (n) πράξεις για την επίλυση του Π. Βρες μια συνάρτηση F και απέδειξε το εξής Θεώρημα: για κάθε αλγόριθμο Χ (ίδιας κλάσης) που επιλύει το πρόβλημα Π υπάρχει μια είσοδος μήκους n, για την οποία ο αλγόριθμος απαιτεί τουλάχιστο F(n) πράξεις.

92 Άνω και Κάτω φράγματα Πόσο αποτελεσματικός είναι ο Αλγόριθμος Α που επιλύει το Πρόβλημα Π? Πρόβλημα P 1. Άνω Φράγμα $ A, " I, A(I) = P(I) & Time(A,I) T upper ( I ) 2. Κάτω Φράγμα " A, $ I, A(I) = P(I) or Time(A,I) T lower ( I )

93 Άνω και Κάτω φράγματα Ο(n 4 ) Αλγόριθμος 1 Πρόβλημα Π Πολυπλοκότητας Ο(n) Ο(n 3 ) Αλγόριθμος 2 Ο(n 2 ) Αλγόριθμος 3 Ο(n) Αλγόριθμος 4 Ω(n) Θεώρημα 3 Άνω Φράγμα Κάτω Φράγμα Ω(logn ) Θεώρημα 2 Ω(1) Θεώρημα 1

94 Άνω και Κάτω φράγματα Ο(n 4 ) Αλγόριθμος 1 Ο(n 3 ) Αλγόριθμος 2 ΚΕΝΟ Ω(n 2 ) Θεώρημα 4 Πρόβλημα Π Πολυπλοκότητας Ο(n 3 ) Άνω Φράγμα Κάτω Φράγμα Ω(n) Θεώρημα 3 Ω(logn ) Θεώρημα 2 Ω(1) Θεώρημα 1

95 Άνω και Κάτω φράγματα Πρόβλημα Παράδειγμα Εύρεση του ΜΑΧ στοιχείου από ένα σύνολο S, με S =n και στοιχεία τύπου type(s). Κλάση Αλγορίθμων: Βασικές Πράξεις: Αλγόριθμοι που Συγκρίνουν και Αντιγράφουν στοιχεία τύπου type(s). Σύγκριση ενός στοιχείου του S με οποιοδήποτε άλλο στοιχείο τύπου type(s).

96 Άνω και Κάτω φράγματα Άνω Φράγμα Παράδειγμα Αλγόριθμος: Find_Max Το πλήθος των Βασικών Πράξεων (S[i]>max) είναι ακριβώς n-1, και επομένως W Find_Max (n) = n-1.

97 Άνω και Κάτω φράγματα Άνω Φράγμα Παράδειγμα Αλγόριθμος: Find_Max Υπάρχει Ταχύτερος Αλγόριθμος!!! Το πλήθος των Βασικών Πράξεων (S[i]>max) είναι ακριβώς n-1, και επομένως W Find_Max (n) = n-1.

98 Άνω και Κάτω φράγματα Κάτω Φράγμα Παράδειγμα Υπολόγισε ένα ελάχιστο πλήθος Βασικών Πράξεων που απαιτούνται για την επίλυση του Προβλήματος Έστω ένα σύνολο S με n στοιχεία τύπου type(s). Υποθέτουμε ότι όλα τα στοιχεία είναι διαφορετικά. Μπορούμε να κάνουμε αυτή την υπόθεση γιατί το κάτω φράγμα αποδεικνύεται για την χειρίστη-περίπτωση και επομένως όλες οι είσοδοι είναι αποδεκτές.

99 Άνω και Κάτω φράγματα Κάτω Φράγμα Παράδειγμα Υπολόγισε ένα ελάχιστο πλήθος Βασικών Πράξεων που απαιτούνται για την επίλυση του Προβλήματος Στο σύνολο S, που έχει n διαφορετικά στοιχεία, υπάρχουν n-1 που δεν είναι max. Ένα στοιχείο x του S, ΔΕΝ είναι max μόνο εάν είναι μικρότερο από ένα τουλάχιστο στοιχείο y του S (x<y). Στη σύγκριση (x<y), το στοιχείο x είναι ο ηττημένος, και το στοιχείο y είναι ο νικητής.

100 Άνω και Κάτω φράγματα Κάτω Φράγμα Παράδειγμα Υπολόγισε ένα ελάχιστο πλήθος Βασικών Πράξεων που απαιτούνται για την επίλυση του Προβλήματος Άρα, n-1 στοιχεία πρέπει να νικηθούν συγκρινόμενα. Προσοχή: με οποιοδήποτε Αλγόριθμο και αν επινοήσουμε!!! Κάθε σύγκριση έχει μόνο ένα ηττημένο (και φυσικά μόνο ένα νικητή ). Άρα, πρέπει να τουλάχιστο n-1 συγκρίσεις!!!

101 Άνω και Κάτω φράγματα Κάτω Φράγμα Παράδειγμα Υπολόγισε ένα ελάχιστο πλήθος Βασικών Πράξεων που απαιτούνται για την επίλυση του Προβλήματος Αυτό σημαίνει ότι, εάν υπάρχουν δύο ή περισσότεροι μη-ηττημένοι όταν οποιοσδήποτε Αλγόριθμος τερματίσει, τότε δεν θα μπορεί να εντοπίσει το max. Άρα, F(n) = n-1 είναι ένα κάτω-φράγμα για το πλήθος των απαιτούμενων συγκρίσεων!!!

102 Κλάσεις Πολυπλοκότητας Πολυπλοκότητα

103 Κλάσεις Πολυπλοκότητας Πολυπλοκότητα

104 Κλάσεις Πολυπλοκότητας Πολυπλοκότητα

105 Κλάσεις Πολυπλοκότητας Πολυπλοκότητα

106 Κλάσεις Πολυπλοκότητας Πολυπλοκότητα

107 Κλάσεις Πολυπλοκότητας Πολυπλοκότητα Ενότητα Αλγόριθμοι και Πολυπλοκότητα

108 Ερωτήματα - Προβληματισμοί Ιστορία των Sissa και Moore

109 Ερωτήματα - Προβληματισμοί Ιστορία του Sissa Σύμφωνα με την παράδοση όταν κάποτε ο ηγεμόνας της περιοχής που ζούσε ο βραχμάνος Σίσσα κάλεσε αυτόν για να επιδείξει το παιγνίδι που είχε εφεύρει, τόσο πολύ γοητεύτηκε απ αυτό που ρώτησε τον Σίσσα τι θα ήθελε ως ανταμοιβή. Τότε ο σοφός εκείνος ζήτησε

110 Ερωτήματα - Προβληματισμοί Το αίτημα του Sissa Το σιτάρι που χρειάζονταν ανέρχονταν σε κόκκους, που αυτοί εκπεφρασμένοι σε βάρος, έχοντας ότι το βάρος ενός κόκκου ίσο με 0, 053 γραμμάρια, ισοδυναμούσαν στη τεράστια ποσότητα των τόνων!

111 Ερωτήματα - Προβληματισμοί Ιστορία του Moore Νόμος του Moore 1965 Ως «Νόμος του Μουρ» ονομάζεται η παρατήρηση πως ο αριθμός των τρανζίστορ ενός πυκνού ολοκληρωμένου κυκλώματος διπλασιάζεται κάθε δύο χρόνια.

112 Ερωτήματα - Προβληματισμοί Ιστορία του Moore Νόμος του Moore 1965 Διατηρεί την ισχύ του αξιοσημείωτα καλά επί 40 χρόνια!!!

113 Ερωτήματα - Προβληματισμοί Ιστορία του Moore Νόμος του Moore 1965

114 Ερωτήματα - Προβληματισμοί Ιστορία του Moore Νόμος του Moore 1965 Ο Νόμος του Moore δίνει αντικίνητρα για την ανάπτυξη πολυωνυμιών αλγορίθμων??? Εάν ένας αλγόριθμος είναι εκθετικός, γιατί να μην περιμένουμε μέχρι να τον κάνει εφικτό ο Νόμος του Moore!!! Συμβαίνει το αντίθετο!!! Ο Νόμος του Moore αποτελεί ένα τεράστιο κίνητρο για την ανάπτυξη αποδοτικών αλγορίθμων!!!!

115 Ερωτήματα - Προβληματισμοί Ιστορία του Moore Νόμος του Moore 1965 Ορίστε γιατί!!! Ένας αλγόριθμος Ο(2 n ) για το πρόβλημα SAT είχε στη διάθεσή του 1 ώρα, θα μπορούσε να λύσει το πρόβλημα με 25 μεταβλητέ το 1975, με 31 μεταβλητές το 1985, με 38 μεταβλητές το 1995, και με περίπου 45 μεταβλητές με τους σημερινού Η/Υ.

116 Ερωτήματα - Προβληματισμοί Ιστορία του Moore Νόμος του Moore 1965 Αρκετή Πρόοδος!!! Κάθε επιπλέων μεταβλητή απαιτεί ΕΝΑΜΙΣΗ χρόνο αναμονής!!!!!! Αντίθετα. Το μέγεθος των στιγμιότυπων που επιλύονται από έναν αλγόριθμο Ο(n) ή ένα αλγόριθμο Ο(n logn) ΕΚΑΤΟΝΤΑΠΛΑΣΙΑΖΕΤΕ κάθε δεκαετία!!!!!!

117 Ερωτήματα - Προβληματισμοί Ιστορία των Sissa και Moore Οι Εκθετικοί Αλγόριθμοι παρουσιάζουν πολυωνυμική αργή πρόοδο!!! ενώ οι Πολυωνυμικοί Αλγόριθμοι παρουσιάζουν εκθετικά γρήγορα πρόοδο!!!

118 Ερωτήματα - Προβληματισμοί Πολυπλοκότητα Αλγόριθμοι Πολυωνυμικοί Εκθετικοί Ο(n k ), k 1 Πολυωνυμικό Χρόνο Εκτέλεσης Ο(c n ), c >1 Εκθετικό Χρόνο Εκτέλεσης

119 Ερωτήματα - Προβληματισμοί???? Πρόβλημα π

120 Ερωτήματα - Προβληματισμοί Ακολουθία Fibonacci εάν εάν εάν

121 Ερωτήματα - Προβληματισμοί Ακολουθία Fibonacci Οι αριθμοί Fibonacci αυξάνουν σχεδόν το ίδιο γρήγορα με τις δυνάμεις του 2 Για παράδειγμα: αποτελείται ήδη από 21 ψηφία!!! Γενικά:

122 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+ Fib1(n-2)

123 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1) + Fib1(n-2) Ερωτήματα Μόνο 3!!! Είναι σωστός; Πόσο χρόνο επαιτεί (ως συνάρτηση του μεγέθους n της εισόδου); Μπορούμε να τον βελτιώσουμε;

124 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 1 Είναι σωστός; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Ακαδημαϊκή ερώτηση!!! καθώς ο αλγόριθμος Fib1 είναι ακριβώς ο ορισμός του Fibinacci για το F n. Καμία σοβαρή δική μας σκέψη!!!

125 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 2 Πόσο χρόνο επαιτεί; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Έστω T(n) το πλήθος των υπολογιστικών βημάτων (βασικών πράξεων) που απαιτούνται για τον υπολογισμό της Fib1(n).

126 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 2 Πόσο χρόνο επαιτεί; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2)

127 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 2 Πόσο χρόνο επαιτεί; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Πολύ άσχημα νέα!!! Ο χρόνος εκτέλεσης του αλγόριθμου αυξάνει το ίδιο γρήγορα με τους αριθμούς Fibonacci!!! Εκθετικό ως προς το n

128 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 2 Πόσο χρόνο επαιτεί; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Τι σημαίνει αυτό?... Πόσο κακός είναι ο Fib1? υπολογιστικά βήματα Earth Simulator της NEC με ταχύτητα 40 τρισεκατομμύρια βήματα/sec Η συνάρτηση Fib1(200) απαιτεί sec

129 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 2 Πόσο χρόνο επαιτεί; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Η συνάρτηση Fib1(200) απαιτεί sec Εάν ξεκινήσει σήμερα τον υπολογισμό, αυτός θα συνεχιζόταν και μετά την μετατροπή του ήλιου μας σε κόκκινο γίγαντα!!!!

130 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Η ταχύτητα των Η/Υ διπλασιάζεται περίπου κάθε 18 μήνες (Νόμος του Moore) Ίσως τότε ο αλγόριθμος Fib1 να εκτελείται πολύ πιο γρήγορα στους Η/Υ του επόμενου έτους!!!! Ο χρόνος εκτέλεσης του Fib1(n) είναι ανάλογος του n (1.6) n Σήμερα το Fib1(100), το επόμενο έτος το Fib1(101), το επόμενο το Fib1(102), Ένα μόνο όρο κάθε έτος!!!!!

131 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Γιατί ο αλγόριθμός μας είναι τόσο αργός? Πρέπει να τον μελετήσουμε και να απαντήσουμε την ερώτηση!!!!????

132 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2)

133 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2)

134 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2)

135 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2)

136 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib1 3 Μπορούμε να τον βελτιώσουμε; Fib1(n) if n=0 then return 0 if n=1 then return 1 return Fib1(n-1)+Fib1(n-2) Ιδέα!!! Να αποθηκεύουμε τα ενδιάμεσα αποτελέσματα!!!!

137 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib2 Fib2(n) if n=0 then return 0 Δημιούργησε έναν πίνακα f[0..n] Θέσε f[0]=0 και f[1]=1 for i=2 to n do f[i]=f[i-1]+f[i-2] return f[n] f

138 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib2 1 Είναι σωστός; Η ορθότητα προκύπτει άμεσα από τον ορισμό του F n Fib2(n) if n=0 then return 0 Δημιούργησε έναν πίνακα f[0..n] Θέσε f[0]=0 και f[1]=1 for i=2 to n do f[i]=f[i-1]+f[i-2] return f[n] 2 Πόσο χρόνο επαιτεί; Ο εσωτερικός βρόχος έχει 1 μόνο υπολογιστικό βήμα και εκτελείται n-1 φορές Τώρα με τον Fib2(n) μπορούμε να υπολογίσουμε όχι μόνο τον όρο αλλά και τον!!!

139 Ερωτήματα - Προβληματισμοί Αλγόριθμος Fib2 3 Μπορούμε να τον βελτιώσουμε; ΝΑΙ!!! Fib2(n) if n=0 then return 0 Δημιούργησε έναν πίνακα f[0..n] Θέσε f[0]=0 και f[1]=1 for i=2 to n do f[i]=f[i-1]+f[i-2] return f[n] Ιδέα!!! Πολλαπλασιασμός Πινάκων!!!! Αλγόριθμος Fib3

140 Ερωτήματα - Προβληματισμοί Προβλήματα με Πολυωνυμική Λύση Πολυωνυμικοί Αλγόριθμοι Ο(n k ), k 1 Πολυωνυμικό Χρόνο Εκτέλεσης

141 Ερωτήματα - Προβληματισμοί Προβλήματα με Εκθετική Λύση Εκθετικοί Αλγόριθμοι Ο(c n ), c >1 Εκθετικό Χρόνο Εκτέλεσης

142 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα ΔΕΝ ΥΠΑΡΧΕΙ ΚΑΝΕΝΑΣ ΑΛΓΌΡΙΘΜΟΣ

143 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα Με δεδομένη μια πολυωνυμική εξίσωση πολλών μεταβλητών, όπως για παράδειγμα η εξίσωση υπάρχουν ακέραιες τιμές των x, y, z οι οποίες να την ικανοποιούν;

144 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα Το πρώτο μη-επιλύσιμο πρόβλημα ανακαλύφθηκε το 1936 από τον Alan Turing, τότε φοιτητής των μαθηματικών στο Cambridge της Αγγλίας. Το Πρόβλημα του Τερματισμού Όταν το διατύπωσε ο Turing δεν υπήρχαν Η/Υ ή γλώσσες προγραμματισμού. Εμφανίστηκαν αργότερα ακριβώς επειδή είχε αυτή την λαμπρή και ευφυή ιδέα ο Turing.

145 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα Πρόβλημα Τερματισμού Έστω ότι σας δίνεται ένα πρόγραμμα P στην αγαπημένη σας γλώσσα προγραμματισμού, μαζί με μια είσοδο X. Μπορείτε να απαντήσετε εάν το πρόγραμμα Π με την είσοδο X θα μπορέσει ποτέ να τερματίσει! Θα θέλαμε να είχαμε έναν Αλγόριθμο, ας τον ονομάσουμε terminates(p,x), ο οποίος μετά από υπολογισμούς θα μας έλεγε εάν το P με είσοδο Χ θα τερματίσει την εκτέλεσή του. Πως θα γράφατε το πρόγραμμα terminates(p,x)

146 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα Πρόβλημα Τερματισμού Λοιπόν, δεν μπορείτε!... Τέτοιος αλγόριθμος δεν υπάρχει!!! Να και η απόδειξη: Υποθέστε ότι είχατε το πρόγραμμα terminates(p,x). Τότε θα μπορούσατε να το χρησιμοποιήσετε ως υποπρόγραμμα του ακόλουθου κακού προγράμματος: paradox(z: file) 1. if terminates(z,z) goto 1

147 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα Πρόβλημα Τερματισμού paradox(z: file) 1. if terminates(z,z) goto 1 Παρατηρήστε τι κάνει το πρόγραμμα paradox: Τερματίζει, εάν και μόνο εάν το πρόγραμμα z δεν τερματίζει με είσοδο z. Και εάν εκτελούσαμε το πρόγραμμα paradox(paradox); Θα μπορούσε ποτέ να τερματίσει; Ή όχι; Καμία απάντηση δεν είναι δυνατή!!!!

148 Ερωτήματα - Προβληματισμοί Προβλήματα Μη-επιλύσιμα Πρόβλημα Τερματισμού Καταλήξαμε σε αντίφαση υποθέτοντας ότι υπάρχει αλγόριθμος που μπορεί να πει εάν ένα πρόγραμμα τερματίζει. Επομένως αυτό το πρόβλημα δεν μπορεί να λυθεί με κανένα αλγόριθμο!!! Όλα αυτά μας λένε κάτι σημαντικό για τον προγραμματισμό: ποτέ δεν θα αυτοματοποιηθεί, και πάντοτε θα βασίζεται στην πειθαρχεία, την επινοητικότητα, και την σοβαρή μελέτη!!!

149 Ερωτήματα - Προβληματισμοί Στόχος ο Σχεδιασμός Αποτελεσματικών Αλγορίθμων Τεχνικές Σχεδίασης Αναδρομή (recursion) Διαίρει και κυρίευε (divide and conquer) Δυναμικός προγραμματισμός (dynamic programming) Απληστία (greedy algorithms) Τυχαιοποίηση (randomization) Αντιστάθμιση (amortization)

150 Τέλος Ενότητας Ευχαριστώ για τη Συμμετοχή σας!!! Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage:

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 2.0 Πολυπλοκότητα Αλγορίθμων Ασυμπτωτική Πολυπλοκότητα Αναδρομικές Σχέσεις Σταύρος Δ. Νικολόπουλος 2016-17 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4.0 Επιλογή Αλγόριθμοι Επιλογής Select και Quick-Select Σταύρος Δ. Νικολόπουλος 2016-17 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros

Διαβάστε περισσότερα

Σχεδίαση & Ανάλυση Αλγορίθμων

Σχεδίαση & Ανάλυση Αλγορίθμων Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 3 Αλγόριθμοι Επιλογής Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Αλγόριθμοι Επιλογής Γνωρίζουμε

Διαβάστε περισσότερα

Δομές Δεδομένων & Αλγόριθμοι

Δομές Δεδομένων & Αλγόριθμοι Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν

Διαβάστε περισσότερα

Στοιχεία Αλγορίθµων και Πολυπλοκότητας

Στοιχεία Αλγορίθµων και Πολυπλοκότητας Στοιχεία Αλγορίθµων και Πολυπλοκότητας Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς Πολυπλοκότητα 1 / 16 «Ζέσταµα» Να γράψετε τις συναρτήσεις

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 3: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Δυναμικός Προγραμματισμός

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

Διαβάστε περισσότερα

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Θεμελιώδη Θέματα Επιστήμης Υπολογιστών Μετασχηματισμοί Υπολογιστικών Προβλημάτων Αναγωγές και Πληρότητα Προσαρμογή από

Διαβάστε περισσότερα

Σχεδίαση & Ανάλυση Αλγορίθμων

Σχεδίαση & Ανάλυση Αλγορίθμων Σχεδίαση & Ανάλυση Αλγορίθμων Απαιτήσεις Μαθήματος Εργαστηρίου Σκιαγράφηση Μαθήματος μια Πρώτη Εισαγωγή Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros

Διαβάστε περισσότερα

Ορισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε:

Ορισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε: Συµβολισµός Ω( ) Τάξη των Συναρτήσεων () Εκτίµηση Πολυπλοκότητας Αλγορίθµων Ορέστης Τελέλης telelis@unipi.gr Ορισµός. Εστω συναρτήσεις: f : N R και g : N R η f(n) είναι Ω( g(n) ) αν υπάρχουν σταθερές C

Διαβάστε περισσότερα

Αλγοριθμικές Τεχνικές

Αλγοριθμικές Τεχνικές Αλγοριθμικές Τεχνικές Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr Αλγοριθμικές Τεχνικές 1 Τεχνικές Σχεδιασμού Αλγορίθμων Ορισμένες γενικές αρχές για τον σχεδιασμό αλγορίθμων είναι: Διαίρει και

Διαβάστε περισσότερα

Αλγοριθμικές Τεχνικές. Brute Force. Διαίρει και Βασίλευε. Παράδειγμα MergeSort. Παράδειγμα. Τεχνικές Σχεδιασμού Αλγορίθμων

Αλγοριθμικές Τεχνικές. Brute Force. Διαίρει και Βασίλευε. Παράδειγμα MergeSort. Παράδειγμα. Τεχνικές Σχεδιασμού Αλγορίθμων Τεχνικές Σχεδιασμού Αλγορίθμων Αλγοριθμικές Τεχνικές Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr Ορισμένες γενικές αρχές για τον σχεδιασμό αλγορίθμων είναι: Διαίρει και Βασίλευε (Divide and

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα.0 Σταύρος Δ. Νικολόπουλος 06-7 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Ταξινόμηση Selection-Sort Bubble-Sort και

Διαβάστε περισσότερα

Δυναμικός Προγραμματισμός

Δυναμικός Προγραμματισμός Τρίγωνο του Pascal Δυναμικός Προγραμματισμός Διωνυμικοί συντελεστές Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός Επιμέλεια διαφανειών: Δημήτρης Φωτάκης (λίγες προσθήκες: Άρης Παγουρτζής) Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα

Διαβάστε περισσότερα

Δυναμικός Προγραμματισμός

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

Διαβάστε περισσότερα

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων Λουκάς Γεωργιάδης loukas@cs.uoi.gr www.cs.uoi.gr/~loukas Βασικές έννοιες και εφαρμογές Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή

Διαβάστε περισσότερα

Δυναμικός Προγραμματισμός

Δυναμικός Προγραμματισμός πρόβλημα μεγέθους Ν «Διαίρει και βασίλευε» : ανεξάρτητα υποπροβλήματα διάσπαση πρόβλημα μεγέθους k πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους Ν Σε κάποιες περιπτώσεις όμως τα υποπροβλήματα δεν είναι ανεξάρτητα

Διαβάστε περισσότερα

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια)

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια) Μορφές αποδείξεων Μαθηματικά Πληροφορικής 2ο Μάθημα Αρχικός συγγραφέας: Ηλίας Κουτσουπιάς Τροποποιήσεις: Σταύρος Κολλιόπουλος Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Υπάρχουν πολλά είδη

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΕΡΙΓΡΑΦΗ Σε αυτή την άσκηση καλείστε να αναλύσετε και να υπολογίσετε το

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 3.0 Σταύρος Δ. Νικολόπουλος 0-7 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Διαίρει και Βασίλευε Quick-sort και Merge-sort

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών 1 Συναρτήσεις και ο υπολογισµός τους 2 Μηχανές Turing 3 Καθολικές γλώσσες προγραµµατισµού 4 Μια µη υπολογίσιµη συνάρτηση 5 Πολυπλοκότητα προβληµάτων 1 Συναρτήσεις Μία συνάρτηση

Διαβάστε περισσότερα

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1,

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1, Κεφάλαιο 8 NP και Υπολογιστική Δυσεπιλυσιμότητα Παύλος Εφραιμίδης V1.1, 2015-01-19 Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 πρόβλημα αναζήτησης (search problem) Ένα πρόβλημα

Διαβάστε περισσότερα

υναμικός Προγραμματισμός

υναμικός Προγραμματισμός υναμικός Προγραμματισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιωνυμικοί Συντελεστές ιωνυμικοί

Διαβάστε περισσότερα

Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013

Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013 Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013 Λυμένες Ασκήσεις Σετ Α: Ανάλυση Αλγορίθμων Άσκηση 1 Πραγματοποιήσαμε μια σειρά μετρήσεων του

Διαβάστε περισσότερα

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων Τι θα κάνουμε σήμερα Εισαγωγή Πολυταινιακές Μηχανές Turing (3.2.1) Μη Ντετερμινιστικές Μηχανές

Διαβάστε περισσότερα

Ορθότητα Χωρική αποδοτικότητα. Βελτιστότητα. Θεωρητική ανάλυση Εμπειρική ανάλυση. Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Ορθότητα Χωρική αποδοτικότητα. Βελτιστότητα. Θεωρητική ανάλυση Εμπειρική ανάλυση. Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Ανάλυση Αλγορίθμων Θέματα Θέματα: Ορθότητα Χρονική αποδοτικότητα Χωρική αποδοτικότητα Βελτιστότητα Προσεγγίσεις: Θεωρητική ανάλυση Εμπειρική ανάλυση Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Θεωρητική

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n) Ανάλυση Πολυπλοκότητας Αλγορίθµων

Διαβάστε περισσότερα

Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο.

Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο. Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο. Πού χρειάζεται; Πολλές μαθηματικές συναρτήσεις ορίζονται αναδρομικά. Δεν είναι

Διαβάστε περισσότερα

Υπολογιστική Πολυπλοκότητα

Υπολογιστική Πολυπλοκότητα Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθµου Α: Ποσότητα υπολογιστικών πόρων που απαιτεί Α ως αύξουσα συνάρτηση µεγέθους στιγµιότυπου εισόδου. Χρόνος, µνήµη, επεξεργαστές, επικοινωνία,

Διαβάστε περισσότερα

Διαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2

Διαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Γενική µέθοδος σχεδιασµού αλγορίθµων: Διαίρεση σε ( 2) υποπροβλήµατα (σηµαντικά) µικρότερου µεγέθους.

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ανεπίλυτα Προβλήματα από τη Θεωρία Γλωσσών (5.1) To Πρόβλημα της Περάτωσης Το Πρόβλημα της Κενότητα

Διαβάστε περισσότερα

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθμου Α: Ποσότητα

Διαβάστε περισσότερα

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ Μαθηματικά Πληροφορικής 2ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης.

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια) Εξαντλητική μέθοδος

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια) Εξαντλητική μέθοδος Μορφές αποδείξεων Μαθηματικά Πληροφορικής ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης.

Διαβάστε περισσότερα

Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I

Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Οι αλγόριθμοι ταξινόμησης: Α. SelectionSort Ταξινόμηση με Επιλογή Β. InsertionSort Ταξινόμηση με Εισαγωγή

Διαβάστε περισσότερα

Λύσεις 4ης Σειράς Ασκήσεων

Λύσεις 4ης Σειράς Ασκήσεων Λύσεις 4ης Σειράς Ασκήσεων Άσκηση 1 Αναγάγουμε τν Κ 0 που γνωρίζουμε ότι είναι μη-αναδρομική (μη-επιλύσιμη) στην γλώσσα: L = {p() η μηχανή Turing Μ τερματίζει με είσοδο κενή ταινία;} Δοσμένης της περιγραφής

Διαβάστε περισσότερα

υναμικός Προγραμματισμός

υναμικός Προγραμματισμός υναμικός Προγραμματισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιωνυμικοί Συντελεστές ιωνυμικοί

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2013 ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας Διδάσκων Καθηγητής: Παναγιώτης Ανδρέου Ημερομηνία Υποβολής:

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

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

Εισαγωγή στην Ανάλυση Αλγορίθμων Εισαγωγή στην Ανάλυση Αλγορίθμων (4) Μεθοδολογία αναδρομικών σχέσεων (Ι) Με επανάληψη της αναδρομής Έστω όπου r και a είναι σταθερές. Βρίσκουμε τη σχέση που εκφράζει την T(n) συναρτήσει της T(n-) την T(n)

Διαβάστε περισσότερα

Αριθμοθεωρητικοί Αλγόριθμοι

Αριθμοθεωρητικοί Αλγόριθμοι Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου 2015 1 / 45 Εισαγωγή Ο δυναµικός

Διαβάστε περισσότερα

ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε Γενική μέθοδος σχεδιασμού αλγορίθμων: ιαίρεση σε ( 2) υποπροβλήματα

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

Κεφάλαιο 5 Ανάλυση Αλγορίθμων Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου

Διαβάστε περισσότερα

a n = 3 n a n+1 = 3 a n, a 0 = 1

a n = 3 n a n+1 = 3 a n, a 0 = 1 Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

(Γραμμικές) Αναδρομικές Σχέσεις

(Γραμμικές) Αναδρομικές Σχέσεις (Γραμμικές) Αναδρομικές Σχέσεις Διδάσκοντες: Φ. Αφράτη, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αναδρομικές Σχέσεις

Διαβάστε περισσότερα

Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012

Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012 Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012 Ενδεικτικές απαντήσεις 1 ου σετ ασκήσεων. Άσκηση 1 Πραγματοποιήσαμε μια σειρά μετρήσεων του χρόνου εκτέλεσης τριών

Διαβάστε περισσότερα

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3)

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) 3.1 Ασυμπτωτικός συμβολισμός (Ι) Οι ορισμοί που ακολουθούν μας επιτρέπουν να επιχειρηματολογούμε με ακρίβεια για την ασυμπτωτική συμπεριφορά. Οι f(n) και g(n) συμβολίζουν

Διαβάστε περισσότερα

(Γραμμικές) Αναδρομικές Σχέσεις

(Γραμμικές) Αναδρομικές Σχέσεις (Γραμμικές) Αναδρομικές Σχέσεις ιδάσκοντες:. Φωτάκης. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αναδρομικές Σχέσεις Αναπαράσταση

Διαβάστε περισσότερα

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Βυζαντινά Σφάλματα Τι θα δούμε σήμερα Κάτω Φράγμα για Αλγόριθμους Συμφωνίας με Βυζαντινά Σφάλματα: n > 3f Αλγόριθμος Συμφωνίας

Διαβάστε περισσότερα

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π Περιορισμοί Αλγοριθμικής Ισχύος Κατηγοριοποίηση πολυπλοκοτήτων Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός

Διαβάστε περισσότερα

υναμικός Προγραμματισμός

υναμικός Προγραμματισμός υναμικός Προγραμματισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιακριτό Πρόβλημα Σακιδίου ίνονται n αντικείμενα και σακίδιο μεγέθους Β. Αντικείμενο

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

ΑΛΓΟΡΙΘΜΟΙ  Άνοιξη I. ΜΗΛΗΣ ΑΛΓΟΡΙΘΜΟΙ http://eclass.aueb.gr/courses/inf161/ Άνοιξη 2016 - I. ΜΗΛΗΣ ΔΥΝΑΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΑΛΓΟΡΙΘΜΟΙ - ΑΝΟΙΞΗ 2016 - Ι. ΜΗΛΗΣ 08 DP I 1 Dynamic Programming Richard Bellman (1953) Etymology (at

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 4: Αναδρομικές σχέσεις και ανάλυση αλγορίθμων Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Διαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1

Διαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1 Διαίρει-και-Βασίλευε Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική μέθοδος

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 1.0 Εισαγωγή στις Βασικές Έννοιες του Μαθήματος Απαιτήσεις Μαθήματος και Εργαστηρίου Περιήγηση στις Βασικές Έννοιες του Μαθήματος Σταύρος Δ. Νικολόπουλος 2016-17

Διαβάστε περισσότερα

Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε»

Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε» Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε» ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε

Διαβάστε περισσότερα

Αναδροµή (Recursion) ύο παρεξηγήσεις. Σκέψου Αναδροµικά. Τρίγωνο Sierpinski Μη αναδροµικός ορισµός;

Αναδροµή (Recursion) ύο παρεξηγήσεις. Σκέψου Αναδροµικά. Τρίγωνο Sierpinski Μη αναδροµικός ορισµός; Αναδροµή (Recursion) Πώς να λύσουµε ένα πρόβληµα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί µε τον ίδιο τρόπο. Πού χρειάζεται; Πολλές µαθηµατικές συναρτήσεις ορίζονται αναδροµικά. εν είναι

Διαβάστε περισσότερα

Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Διαίρει-και-Βασίλευε Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική

Διαβάστε περισσότερα

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

ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ Θέματα μελέτης Ορθότητα και απόδοση αλγορίθμων Παρουσίαση και ανάλυση αλγορίθμου για πρόσθεση Al Khwarizmi Αλγόριθμοι Το δεκαδικό σύστημα εφευρέθηκε στην Ινδία περίπου το

Διαβάστε περισσότερα

Διάλεξη 04: Παραδείγματα Ανάλυσης

Διάλεξη 04: Παραδείγματα Ανάλυσης Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα

Διαβάστε περισσότερα

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i. Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 5.1 Επίδοση αλγορίθμων Μέχρι τώρα έχουμε γνωρίσει διάφορους αλγόριθμους (αναζήτησης, ταξινόμησης, κ.α.). Στο σημείο αυτό θα παρουσιάσουμε ένα τρόπο εκτίμησης της επίδοσης (performance) η της αποδοτικότητας

Διαβάστε περισσότερα

Αναδρομικοί Αλγόριθμοι

Αναδρομικοί Αλγόριθμοι Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας ένα ή περισσότερα στιγμιότυπα του ίδιου προβλήματος. Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Θεμελιώσεις Επιστήμης Η/Υ ΠΛΗ30 Τελική Εξέταση 26 Ιουνίου 2013 Ονοματεπώνυμο Φοιτητή Αριθμός Μητρώου Φοιτητή Τμήμα Υπογραφή Φοιτητή Υπογραφή Επιτηρητή Διάρκεια: 180 Ερώτημα Μονάδες Βαθμολογία 1 10+10 2

Διαβάστε περισσότερα

Μάθημα 20: Δυναμικός Προγραμματισμός (DP)

Μάθημα 20: Δυναμικός Προγραμματισμός (DP) Μάθημα 20: Δυναμικός Προγραμματισμός (DP) Γενικά Είναι μια γενική μεθοδολογία και δεν υπάρχει ένα πρότυπο διατύπωσης /επίλυσης προβλημάτων Αρχικά ξεκίνησε σαν μαθηματική μέθοδος για τη λήψη σειράς αλληλοσυνδεόμενων

Διαβάστε περισσότερα

Προσεγγιστικοί Αλγόριθμοι

Προσεγγιστικοί Αλγόριθμοι Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)

Διαβάστε περισσότερα

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 16: Αναγωγές

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 16: Αναγωγές ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 16: Αναγωγές Τι θα κάνουμε σήμερα Το Πρόβλημα του Τερματισμού (4.2) Εισαγωγή στις Αναγωγές Ανεπίλυτα Προβλήματα από την Θεωρία των Γλωσσών (5.1) Απεικονιστικές

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Παναγιώτα Παναγοπούλου 11η Διάλεξη 12 Ιανουαρίου 2017 1 Ανεξάρτητο σύνολο Δοθέντος ενός μη κατευθυνόμενου γραφήματος G = (V, E), ένα ανεξάρτητο σύνολο (independent set) είναι ένα

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Διαίρει και Βασίλευε Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαίρει και Βασίλευε Divide and Conquer Η τεχνική διαίρει και βασίλευε αναφέρεται

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΜΑΘΗΜΑ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΜΑΘΗΜΑ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΜΑΘΗΜΑ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ Ιστότοπος Βιβλίου http://www.iep.edu.gr/ και «Νέα Βιβλία ΙΕΠ ΓΕΛ και ΕΠΑΛ» 2 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων

Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα

Διαβάστε περισσότερα

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

Εισαγωγή στους Αλγορίθμους Ενότητα 11η Εισαγωγή στους Αλγορίθμους Ενότητα 11η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Δυναμικός Προγραμματισμός Σταθμισμένος Χρονοπρογραμματισμός

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { G,k η G είναι μια ασυμφραστική γραμματική η οποία παράγει κάποια λέξη 1 n όπου n k } (β) { Μ,k η Μ είναι

Διαβάστε περισσότερα

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 14: Αλγόριθμοι Ταξινόμησης Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Οι αλγόριθμοι ταξινόμησης 3) Mergesort Ταξινόμηση με Συγχώνευση 4) BucketSort Ταξινόμηση με Κάδους Διδάσκων:

Διαβάστε περισσότερα

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης Προσπάθεια υλοποίησης Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι

Διαβάστε περισσότερα

ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων

ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα

Διαβάστε περισσότερα

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1) Πότε χρησιμοποιείται η δομή επανάληψης

Διαβάστε περισσότερα

Χαρακτηριστικά αναδροµής

Χαρακτηριστικά αναδροµής Χαρακτηριστικά αναδροµής base case : συνθήκη τερµατισµού της αναδροµής Όταν το πρόβληµα είναι αρκετά µικρό ή απλό ώστε η λύση να είναι άµεση αναδροµικό βήµα : κλήση της ίδιας συνάρτησης για µικρότερη ή

Διαβάστε περισσότερα

num(m(w 1 ;... ; w k )) = f(num(w 1 ),..., num(w k ))

num(m(w 1 ;... ; w k )) = f(num(w 1 ),..., num(w k )) Υπολογισμοί με Μ.Τ. Εστω M = (K, Σ, δ, s, {y, n}) μια Μ.Τ. Κάθε συνολική κατάσταση τερματισμού της οποίας η κατάσταση τερματισμού είναι το y, θα ονομάζεται συνολική κατάσταση αποδοχής, ενώ αν η κατάσταση

Διαβάστε περισσότερα

τις αναδρομικές ακολουθίες (recursive sequences) στις οποίες ορίζαμε

τις αναδρομικές ακολουθίες (recursive sequences) στις οποίες ορίζαμε Κεφάλαιο 9: Αναδρομή Ο τρόπος με τον οποίο σκεφτήκαμε και σχεδιάσαμε τις συναρτήσεις στο προηγούμενο κεφάλαιο ακολουθούσε τη φιλοσοφία του προγραμματισμού που είχαμε αναπτύξει σε όλο το προηγούμενο βιβλίο.

Διαβάστε περισσότερα

Πολυπλοκότητα Αλγορίθµων

Πολυπλοκότητα Αλγορίθµων Πολυπλοκότητα Αλγορίθµων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εµπειρική Θεωρητική Ανάλυση Αλγορίθµων Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις

Διαβάστε περισσότερα

11.1 Συναρτήσεις. ΚΕΦΑΛΑΙΟ 11: Θεωρία υπολογισµών

11.1 Συναρτήσεις. ΚΕΦΑΛΑΙΟ 11: Θεωρία υπολογισµών ΚΕΦΑΛΑΙΟ : Θεωρία υπολογισµών. Συναρτήσεις και ο υπολογισµός τους. Μηχανές Turig.3 Καθολικές γλώσσες προγραµµατισµού.4 Μια µη υπολογίσιµη συνάρτηση.5 Πολυπλοκότητα προβληµάτων.6 Κρυπτογραφία δηµόσιου κλειδιού.

Διαβάστε περισσότερα

Αλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων

Αλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων Τεχνικές Σχεδιασµού Αλγορίθµων Αλγόριθµοι Παύλος Εφραιµίδης pefraimi@ee.duth.gr Ορισµένες γενικές αρχές για τον σχεδιασµό αλγορίθµων είναι: ιαίρει και Βασίλευε (Divide and Conquer) υναµικός Προγραµµατισµός

Διαβάστε περισσότερα

Κεφάλαιο 2 Ανάλυση Αλγορίθμων

Κεφάλαιο 2 Ανάλυση Αλγορίθμων Κεφάλαιο Ανάλυση Αλγορίθμων Περιεχόμενα.1 Εισαγωγή... 0. Εμπειρική και Θεωρητική Ανάλυση Αλγορίθμων.....1 Εμπειρική Πολυπλοκότητα..... Θεωρητική Πολυπλοκότητα... 3.3 Ανάλυση Χειρότερης και Αναμενόμενης

Διαβάστε περισσότερα

(Γραμμικές) Αναδρομικές Σχέσεις

(Γραμμικές) Αναδρομικές Σχέσεις (Γραμμικές) Αναδρομικές Σχέσεις ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αναδρομικές Σχέσεις Αναπαράσταση

Διαβάστε περισσότερα

Διωνυµικοί Συντελεστές. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1

Διωνυµικοί Συντελεστές. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1 Διωνυµικοί Συντελεστές Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1 Διωνυµικοί Συντελεστές Διωνυµικοί συντελεστές Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός

Διαβάστε περισσότερα

Αν ένα πρόβλημα λύνεται από δύο ή περισσότερους αλγόριθμους, ποιος θα είναι ο καλύτερος; Με ποια κριτήρια θα τους συγκρίνουμε;

Αν ένα πρόβλημα λύνεται από δύο ή περισσότερους αλγόριθμους, ποιος θα είναι ο καλύτερος; Με ποια κριτήρια θα τους συγκρίνουμε; Αν ένα πρόβλημα λύνεται από δύο ή περισσότερους αλγόριθμους, ποιος θα είναι ο καλύτερος; Με ποια κριτήρια θα τους συγκρίνουμε; Πως θα υπολογίσουμε το χρόνο εκτέλεσης ενός αλγόριθμου; Για να απαντήσουμε

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Δημήτρης Πλεξουσάκης 3ο μέρος σημειώσεων: Μέθοδος της Επίλυσης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια

Διαβάστε περισσότερα

οµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ

οµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ ΕΝΟΤΗΤΑ 1 ΕΙΣΑΓΩΓΗ 1 εδοµένα Σύνολο από πληροφορίες που πρέπει να αποθηκευτούν σε έναν υπολογιστή Υπολογιστικό Μοντέλο ένας επεξεργαστής και µεγάλος

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

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

Διαβάστε περισσότερα

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου, Τμήμα Μηχανικών Πληροφορικής ΤΕ Χειμερινό Εξάμηνο 2014-2015 (Παρουσίαση 5) 1 / 17 Απόδοση προγραμμάτων Συχνά χρειάζεται να εκτιμηθεί η απόδοση

Διαβάστε περισσότερα

Το 10ο πρόβλημα του Hilbert I

Το 10ο πρόβλημα του Hilbert I Το 10ο πρόβλημα του Hilbert I Το 1900 στο Παρίσι, ο David Hilbert έκανε μια ομιλία για τα 23 πιο σπουδαία μαθηματικά προβλήματα που κληρονομούσε ο 20ος αιώνας από τον 19ο. Το 10ο ήταν: Απόφανση περί επιλυσιμότητας

Διαβάστε περισσότερα

Φροντιστήριο 11 Λύσεις

Φροντιστήριο 11 Λύσεις Άσκηση 1 Φροντιστήριο 11 Λύσεις Να αποδείξετε ότι η κλάση Ρ είναι κλειστή ως προς τις πράξεις της ένωσης, της συναρμογής και του συμπληρώματος. Θα πρέπει να δείξουμε ότι: (α) Ένωση: Αν οι Λ 1 και Λ 2 είναι

Διαβάστε περισσότερα