ΕΠΛ 232: Αλγόριθµοι και Πολυπλοκότητα. Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

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

Download "ΕΠΛ 232: Αλγόριθµοι και Πολυπλοκότητα. Κατ οίκον Εργασία 1 Σκελετοί Λύσεων"

Transcript

1 ΕΠΛ 22: Αλγόριθµοι και Πολυπλοκότητα Κατ οίκον Εργασία Σκελετοί Λύσεων. (α) Έστω δροµολόγηση e, e 2,, e των εργασιών, 2,,. Τότε οι χρόνοι συµπλήρωσης των εργασιών είναι e d e e 2 d e + d e 2 e d e + d e + d 2 e e d e + de + de d 2 e Συνεπώς, για τη συγκεκριµένη δροµολόγηση έχουµε Ε = ( de + ( ) de + ( ) de de ) 2 ( To κριτήριο αυτό είναι κατάλληλο για τη δηµιουργία άπληστου αλγορίθµου. Θα το αποδείξουµε µε τη µέθοδο της επαγωγής: Έστω δροµολόγηση = e, e 2,, e µια βέλτιστη λύση στο πρόβληµα, δηλαδή, µια δροµολόγηση που ελαχιστοποιεί το µέσο χρόνο συµπλήρωσης των εργασιών, 2,,. Έστω f η εργασία µε το µικρότερο χρόνο εκτέλεσης. Αν f = e, τότε η λύση περιέχει τη βέλτιστη επιλογή. ιαφορετικά, έστω η δροµολόγηση όπου η εργασίες f και e ανταλλάσσουν θέσεις, δηλαδή αν = e, e 2,, f,, e τότε = f, e 2,, e,, e. Έστω Ε και Ε οι µέσοι χρόνοι συµπλήρωσης των και, αντίστοιχα. Τότε E E ' = ( de + ( ) d ( )... ( )... ) e + d 2 e + + i d f + + de ( d f + ( ) de + ( ) d ( ) ) 2 e i d e d e = ( de d + ( )( )) f i d f de i = ( de d ) 0 f Το τελευταίο βήµα έπεται από την υπόθεση ότι η εργασία f έχει το µικρότερο χρόνο εκτέλεσης από όλες τις εργασίες, δηλαδή, de d f. Εποµένως, αφού, Ε Ε 0, τότε Ε Ε. Επιπλέον, αφού γνωρίζουµε ότι η είναι µια βέλτιστη λύση στο πρόβληµα, τότε Ε = Ε και συνεπώς η είναι µια βέλτιστη δροµολόγηση που ξεκινά µε την άπληστη επιλογή. Μπορούµε να χρησιµοποιήσουµε τα ίδια επιχειρήµατα και για την εργασία µε το δεύτερο µικρότερο χρόνο εκτέλεσης, και ούτω καθεξής (επαγωγή).

2 (i To κριτήριο αυτό είναι ακατάλληλο για το πρόβληµα. Αντιπαράδειγµα: = 2, d = και d 2 = 5. Επιλέγοντας σύµφωνα µε το κριτήριο, παίρνουµε τη δροµολόγηση 2,, µε c = 8, c 2 = 5 και Ε = /2. Υπάρχει όµως δροµολόγηση µε µικρότερο µέσο χρόνο συµπλήρωσης: η δροµολόγηση,2 µε c =, c 2 = 8 και Ε=/2. (β) Σε αυτή την παραλλαγή του προβλήµατος, υποθέτουµε ότι οι εργασίες δεν είναι διαθέσιµες από την αρχή αλλά αποδεσµεύονται σε κάποιους προκαθορισµένους χρόνους. Το κριτήριο απληστίας στην προκειµένη περίπτωση µεταβάλλεται ως εξής: Ανά πάσα στιγµή επέλεξε την εργασία µε το µικρότερο υπολειπόµενο χρόνο από αυτές που είναι διαθέσιµες. Αν κατά την εκτέλεση κάποιας εργασία αποδεσµευτεί άλλη εργασία µε µικρότερο χρόνο εκτέλεσης τότε διέκοψε την εργασία που τρέχει και εκτέλεσε τη νέα εργασία µε τον ελάχιστο χρόνο εκτέλεσης. Έστω r, r 2,, r k, οι χρόνοι αποδέσµευσης εργασιών σε αύξουσα σειρά, και έστω Σ, Σ 2,, Σ k, τα σύνολα εργασιών που αποδεσµεύονται σε κάθε ένα από αυτούς τους χρόνους, αντίστοιχα. Υποθέτουµε ότι κάθε ένα από τα σύνολα περιέχει τις εργασίες ταξινοµηµένες σε αύξουσα σειρά ως προς το χρόνο εκτέλεσής τους. Τότε, δυνατό στιγµιότυπο του προβλήµατος είναι το r = 0, Σ = {(e, ), (e 2, 4) r 2 =, Σ 2 = {(e, ), (e 4, 4) r =, Σ = {(e 5, ), (e, ) όπου ο αλγόριθµος θα έχει το πιο κάτω αποτέλεσµα: e e e e 5 e e e 2 e Παρατηρείστε ότι η δροµολόγηση αυτή έχει µικρότερο µέσο χρόνο συµπλήρωσης από τη πιο κάτω δροµολόγηση (όπου δεν εφαρµόζεται διακοπή εργασιών): e e e 5 e e 2 e Ακολουθεί ο αλγόριθµος σε ψευδοκώδικα. Υποθέτει την ύπαρξη δύο δοµών δεδοµένων: SStack Ταξινοµηµένη στοίβα: Λίστα ζευγών, ταξινοµηµένη σε αύξουσα σειρά ως προς το δεύτερο στοιχείο, που υποστηρίζεται από τις πράξεις: IsEmpty(S), (έλεγχος αν η S είναι κενή), Pop(S) (επιστροφή του κόµβου κορυφής), Push(S, x) (εισαγωγή του x στην κορυφή της S), Merge(S, T) (συγχώνευση των S και T) 2

3 Queue Ουρά: Λίστα ζευγών που υποστηρίζεται από τις πράξεις Equeue(Q,x) (εισαγωγή του x στο τέλος της Q) και Apped(Q, S) (εισαγωγή των στοιχείων της S µετά από τα στοιχεία της Q). it i = ; it time = r i ; SStack jobs = Σ i ; Queue schedule = ; while (!IsEmpty(jobs) OR i<=m) (i == m) Apped(schedule, jobs); else IsEmpty(jobs) i++; time = r i ; jobs = Σ i ; else (e,d) = Pop(jobs); ( d + time < r i+ ) Equeue(schedule, (e,d)); time = time + d; else (d >= r i+ time ) Equeue(schedule, (e, r i+ time); (d > r i+ time) Push(jobs, (e, d (r i+ time)); Merge(jobs, Σ i+ ); i++; time = r i ; Ο χρόνος εκτέλεσης της διαδικασίας είναι Ο( ΧΕ(Merge)) και εποµένως εξαρτάται από την υλοποίηση της δοµής SStack. Αν η υλοποίηση αυτή γίνει µε γραµµική δοµή δεδοµένων ο χρόνος εκτέλεσης της Merge (XE(Merge)) είναι της τάξης Ο() διαφορετικά, µε χρήση δενδρικής δοµής, είναι της τάξεως Ο( ). Η απόδειξη της ορθότητας αφήνεται ως άσκηση για τον αναγνώστη. 2. (α) Οι νόµιµες τοποθετήσεις είναι οι εξής:

4 (β) Αναδροµικός ορισµός της βέλτιστης λύσης. Έστω k) η µέγιστη τιµή τοποθέτησης από τη στήλη µέχρι τη στήλη i που τελειώνει µε στήλη στην τοποθέτηση υπ αριθµό k. Τότε το k) δίνεται αναδροµικά ως εξής: 0 gai(, + maxm {2,,4,7 i, gai(2, + maxm {,,4,5, i, gai(, + maxm {,2,4,,7 i, k) = gai(4, + maxm {,2,,5 i, gai(, + gai(, + maxm {2,4,7 i, gai(, + gai(4, + maxm {2, i, gai(2, + gai(4, + maxm {,,5 i, i = 0 k =, i > 0 k = 2, i > 0 k =, i > 0 k = 4, i > 0 k = 5, i > 0 k =, i > 0 k = 7, i > 0 Από αυτή την αναδροµική σχέση παρατηρούµε ότι για υπολογισµό κάθε k) απαιτείται γνώση κάποιων i-,k). Η βασική περίπτωση δίνεται από το 0,k) και το ζητούµενο είναι το max(,),,2),,,7)). Εποµένως χρησιµοποιούµε ένα πίνακα C διαστάσεων 7 και υπολογίζουµε τις θέσεις του ξεκινώντας µε τα C[0,k] και προχωρώντας προς τα C[, k], C[2,k],, και C[,k]. Σε ψευδοκώδικα ο αλγόριθµος έχει ως εξής: maxgai (it gai[4,]) for (k=; k<=7, k++) C[0,k]= 0; for (i = ; i <= ; i++){ max = C[i-,2]; (max < C[i-,]) max = C[i-,]; (max < C[i-,4]) max = C[i-,4]; (max < C[i-,7]) max = C[i-,7]; C[] = max + gai[]; max = C[i-,]; (max < C[i-,]) max = C[i-,]; (max < C[i-,4]) max = C[i-,4]; (max < C[i-,5]) max = C[i-,5]; (max < C[i-,]) max = C[i-,]; 4

5 C[2] = max + gai[2]; C[] = max + gai[]; C[4] = max + gai[4]; C[5] = max + gai[] + gai[]; C[] = max + gai[] + gai[4]; C[7] = max + gai[2] + gai[4]; max = C[,]); for (i= 2; i<=7; i++) (C[,i]> max) max = C[,i]; retur max; Ο χρόνος εκτέλεσης του αλγόριθµου είναι Ο( 7 c) = O(). (δ) Για να επιστρέψουµε την ακριβή τοποθέτηση µε τη µέγιστη τιµή, θα πρέπει να επεκτείνουµε τον αλγόριθµο έτσι ώστε να διατηρεί πληροφορίες για τη δοµή της βέλτιστης λύσης κάθε υποπροβλήµατος. Συγκεκριµένα, εκτός από τον πίνακα k) θα χρησιµοποιήσουµε ένα δεύτερο πίνακα Last(k) όπου θα φυλάγουµε τον αριθµό της τοποθέτησης της προτελευταίας στήλης στη βέλτιστη τοποθέτηση από τη στήλη µέχρι τη στήλη i που τελειώνει µε στήλη στην τοποθέτηση µε αριθµό k. Ο καινούριος αλγόριθµος φαίνεται πιο κάτω όπου οι προσθήκες εµφανίζονται µε σκούρα γράµµατα. maxgai (it gai[4,]) for (k=; k<=7, k++) C[0,k]= 0; D[0,k] = 0; for (i = ; i <= ; i++){ max = C[i-,2]; D[] = 2; (max < C[i-,]) max = C[i-,]; D[] = ; (max < C[i-,4]) max = C[i-,4]; D[] = 4; (max < C[i-,7]) max = C[i-,7]; D[] = 7; C[] = max + gai[]; max = C[i-,]; D[2] = ; (max < C[i-,]) 5

6 max = C[i-,]; D[] = ; (max < C[i-,4]) max = C[i-,4]; D[] = 4; (max < C[i-,5]) max = C[i-,5]; D[] = 5; (max < C[i-,]) max = C[i-,]; D[] = ; C[2] = max + gai[2]; C[] = max + gai[]; C[4] = max + gai[4]; max = C[,]); last = ; for (i= 2; i<=7; i++) (C[,i]> max) max = C[,i]; last = i; pritf(last); while (i > 0) last= D[last]; pritf(last); i--; Τυπώνει ανάποδα τη βέλτιστη τοποθέτηση. retur max;. (α) Από τον ορισµός του γινοµένου δύο πολυωνύµων, έχουµε ότι x) = c 0 + c x + c 2 x 2 + c x + c 4 x 4 όπου c 0 = a 0 b 0 c = a 0 b + a 0 b c 2 = a 0 b 2 + a b + a 0 b 2 c = a b 2 + a b 2 c 4 = a 2 b 2 Κατά συνέπεια, για υπολογισµό του γινοµένου απαιτούνται 9 πολλαπλασιασµοί και 4 προσθέσεις. (β) Χρησιµοποιώντας τα γινόµενα P,, P, το πρόβληµα ανάγεται στους πιο κάτω υπολογισµούς: c 0 = P c = P 4 P P 2 c 2 = P P P + P 2

7 c = P 5 P 2 P c 4 = P Αυτή η µέθοδος προφανώς απαιτεί τη χρήστη των γινοµένων και προσθαφαιρέσεων. (γ) Ο αλγόριθµος διαίρει και βασίλευε για το πρόβληµα έχει ως εξής: Έστω τα πολυώνυµα f(x) = a 0 + a x + + a - x -, g = b 0 + b x + + b - x -. Μοίρασε τα πολυώνυµα σε τρία τρίτα: f 0 (x)= a 0 ++a /- x /-, f (x)= a / ++a 2/- x /-, και f 2 (x)= a 2/ ++a - x /-, g 0 (x)= b 0 ++b /- x /-, g (x)= b / ++b 2/- x /-, και g 2 (x)= a 2/ ++b - x /-, Υπολόγισε αναδροµικά τα γινόµενα P = f 0 g 0 P 2 = f g P = f 2 g 2 P 4 = (f 0 + f ) (g 0 + g ) P 5 = (f + f 2 ) (g + g 2 ) P = (f 0 + f 2 ) (g 0 + g 2 ) Συνδύασε τα πιο πάνω γινόµενα για να λάβεις το γινόµενο πολυώνυµο ως εξής: f(x) g(x) = P + x / (P 4 P P 2 ) + x 2/ (P P P + P 2 ) + x (P 5 P 2 P ) + x 4/ P Έστω Τ() ο χρόνος εκτέλεσης της διαδικασίας σε πολυώνυµα βαθµού. Το Τ() δίνεται από την αναδροµική εξίσωση Τ() = Τ() = T(/) + c, Λύνοντας την αναδροµική εξίσωση µε τη µέθοδο της αντικατάσταση παίρνουµε: T() = T(/) + = 2 T(/ 2 ) = T(/ ) = i T(/ i ) + 2 i Θέτοντας k = T() = k T(/ k ) + 2 k = k T(/) + (2 k ) = k + (2 k ) = k + k (2 k ) = 2 k k 7

8 = 2 = 2 = 2 ( = 2 Θ( ) ) (δ) Ο προτεινόµενος αλγόριθµος έχει χρόνο εκτέλεσης που δίνεται από την πιο κάτω αναδροµική εξίσωση: Τ() = m T(/4) + c Τ() = Χρησιµοποιώντας το θεώρηµα γενικής χρήσης συµπεραίνουµε ότι Aν O( lοg 4 m ε ), δηλαδή m>4, T() O( lοg 4 m ). Aν Θ( lοg 4 m ), δηλαδή m=4, T() O( lοg 4 4 lg ) = O( lg ). Aν Ω( lοg 4 m + ε ), δηλαδή m<4, T() O() Εποµένως, για m 4, δηλαδή στις δύο τελευταίες πιο πάνω περιπτώσεις, ο αλγόριθµος είναι αποδοτικότερος από τον αλγόριθµο που προτείνεται στο (γ) (, O( ( ). Επίσης, το ζητούµενο ισχύει (πρώτη περίπτωση) όταν m>4 και 4 m < ηλαδή 4 m < 4 < 4 m < 4 m 4 < Aρα m=9 είναι ο µεγαλύτερος ακέραιος που ικανοποιεί το ζητούµενο. m 4. Μοντελοποιούµε τη σκακιέρα ως ένα δισδιάστατο πίνακα Board[7,7] µε αρχική κατάσταση: Board[,] = Board[,2] = Board[,] = Board[,7] = INVALID Board[2,] = Board[2,2] = Board[2,] = Board[2,7] = INVALID Board[,] = Board[,2] = Board[,] = Board[,7] = INVALID Board[7,] = Board[7,2] = Board[7,] = Board[7,7] = INVALID Board[,] = Board[,4] = Board[,5] = FULL Board[2,] = Board[2,4] = Board[2,5] = FULL Board[,] = Board[,4] = Board[,5] = FULL Board[7,] = Board[7,4] = Board[7,5] = FULL Board[,] = Board[,2] = = Board[,7] = FULL Board[4,] = Board[4,2] = = Board[4,7] = FULL Board[5,] = Board[5,2] = = Board[5,7] = FULL Board[4,4] = EMPTY 9.59 Ορίζουµε µια κίνηση του παιχνιδιού ως µια τριάδα ( j 7, m {U, D, R, L, αν Board[j] = FULL, και επιπλέον ένα από τα ακόλουθα: m = U (up), Board[i, j] = FULL, Board[i 2, j] = EMPTY, 8

9 m = D (dow), Board[i +, j] = FULL, Board[i + 2, j] = EMPTY, m = R (right), Board[ j + ] = FULL, Board[i, j + 2] = EMPTY, m = L (left), Board[i, j ] = FULL, Board[ j 2] = EMPTY, Ονοµάζουµε µια ακολουθία από k νόµιµες κινήσεις του παιχνιδιού, 0 k, k- υποσχόµενη αν 0 k <, και εφαρµογή των k κινήσεων οδηγούν τη σκακιέρα σε κατάσταση όπου υπάρχουν δυνατές κινήσεις, ή k = και εφαρµογή των k κινήσεων οδηγούν τη σκακιέρα σε κατάσταση µε Board[4,4] = FULL. Λύση στο πρόβληµα είναι ένα -υποσχόµενο διάνυσµα. Θεωρώντας ότι ξεκινούµε µε το 0-υποσχόµενο διάνυσµα και µε δεδοµένο ένα i-υποσχόµενο διάνυσµα υπάρχουν τρεις περιπτώσεις είτε αυτό µπορεί να γίνει (i+)-υποσχόµενο διάνυσµα µε την προσθήκη µιας νέας κίνησης, είτε, αν i = 0, αυτό µπορεί να γίνει -υποσχόµενο διάνυσµα µε την προσθήκη µιας τελευταίας κίνησης, είτε έχουµε φτάσει σε αδιέξοδο, δηλαδή σε µια τοποθέτηση στην οποία είτε δεν υπάρχουν δυνατές κινήσεις, είτε δεν έχουµε φθάσει στην επιθυµητή τελική κατάσταση. Σε τέτοια περίπτωση ο αλγόριθµος θα οπισθοχωρήσει, θα µαταιώσει την τελευταία κίνηση επαναφέροντας τη σκακιέρα στην προηγούµενη κατάσταση, και θα θεωρήσει µια άλλη κίνηση από τη συγκεκριµένη κατάσταση, αν υπάρχει. Υποθέτουµε ότι έχουµε υλοποιηµένες τις διαδικασίες DoMove(move, Board) η οποία εκτελεί την κίνηση move στη σκακιέρα Board και µας επιστρέφει το σύνολο των νέων κινήσεων που έχουν γίνει εφικτές µετά από την κίνηση, και UdoMove(move, Board) η οποία µαταιώνει την κίνηση move στη σκακιέρα Board. Ο αλγόριθµος έχει ως εξής: board(){ i = 0; game = ; moves[2]= [,, ] moves[0] = (2,4,D),(4,2,R),(4,,L),(,4,U) ; while (i 2) (i == 2 AND Board[4,4]!= FULL) retur game; else (!IsEmpty(moves[i]) x = Pop (moves[i]); moves[i+] = DoMove(x,Board); game = Push(game,move) else UdoMove(Pop(game), Board); i--; 5. Τα δύο προβλήµατα µπορούν να λυθούν µε αλγόριθµους δυναµικού προγραµµατισµού, παραλλαγές του αλγόριθµου των Floyd-Warshall, και χρόνους 9

10 εκτέλεσης της τάξης Ο(³). Πιο κάτω δίνονται οι αναδροµικοί ορισµοί των ζητούµενων βέλτιστων λύσεων. Η διατύπωση των αλγορίθµων αφήνεται ως άσκηση στον αναγνώστη. ( Συµβολισµός: Γράφουµε paths[m] για το µέγιστο αριθµό µονοπατιών από την κορυφή i στην κορυφή j µε ενδιάµεσες κορυφές που ανήκουν στο σύνολο {,2,m. Τότε, w( j) paths[ 0] = 0, w( j) = paths[ m] = paths[ m ] + paths[ m ] paths[ m ]) Παρατηρείστε πως για να ορίζεται η έννοια του µέγιστου αριθµού µονοπατιών ανάµεσα στους κόµβους ενός γράφου, ο γράφος πρέπει να µην περιέχει κύκλους. (i Συµβολισµός: Γράφουµε maxpaths[m] για τον αριθµό των βραχύτερων µονοπατιών από την κορυφή i στην κορυφή j µε ενδιάµεσες κορυφές που ανήκουν στο σύνολο {,2,m. Τότε, w( j) maxpaths[ 0] = 0, w( j) = maxpaths[ m ], c( < c( + c( maxpaths[ m ] maxpaths[ m ], maxpaths[ m] = c( > c( + c( maxpaths[ m ] + maxpaths[ m ] maxpaths[ m ], c( = c( + c( όπου τα c[m] είναι τα βάρη βραχύτερων µονοπατιών όπως ορίζονται στον αλγόριθµο των Floy-Warshall. 0

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων EΠΛ Αλγόριθµοι και Πολυπλοκότητα Φεβρουάριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων. Ο αλγόριθµος διαίρει και βασίλευε για το πρόβληµα έχει ως εξής: Μοίρασε τον πίνακα σε δύο µισά. Υπολόγισε αναδροµικά τα

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

Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:

Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: υναµικός Προγραµµατισµός Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε υναµικό Προγραµµατισµό Το πρόβληµα του πολλαπλασιασµού πινάκων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα 3- υναµικός

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

(CLR, κεφάλαιο 32) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Παραστάσεις πολυωνύµων Πολυωνυµική Παρεµβολή ιακριτός Μετασχηµατισµός Fourier

(CLR, κεφάλαιο 32) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Παραστάσεις πολυωνύµων Πολυωνυµική Παρεµβολή ιακριτός Μετασχηµατισµός Fourier Ταχύς Μετασχηµατισµός Fourier CLR, κεφάλαιο 3 Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Παραστάσεις πολυωνύµων Πολυωνυµική Παρεµβολή ιακριτός Μετασχηµατισµός Fourier Ταχύς Μετασχηµατισµός Fourier

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

Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:

Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: υναµικός Προγραµµατισµός Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε υναµικό Προγραµµατισµό Το πρόβληµα του πολλαπλασιασµού πινάκων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα 3- υναµικός

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

ΕΠΛ 232 Φροντιστήριο 2

ΕΠΛ 232 Φροντιστήριο 2 Πρόβληµα ΕΠΛ Φροντιστήριο Έχετε 0 και θέλετε να τις επενδύσετε για n µήνες. Tην πρώτη µέρα κάθε µήνα έχετε µόνο µια από τις παρακάτω τρεις επιλογές:. Να αγοράσετε ένα πιστοποιητικό αποταµίευσης από την

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

ΕΠΛ 232 Αλγόριθµοι και Πολυπλοκότητα 2-1

ΕΠΛ 232 Αλγόριθµοι και Πολυπλοκότητα 2-1 ιαίρει και Βασίλευε Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Η Μέθοδος Σχεδιασµού Αλγορίθµων ιαίρει και Βασίλευε Επίλυση Αναδροµικών Εξισώσεων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα - ιαίρει και Βασίλευε

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

Κατ οίκον Εργασία 2 Σκελετοί Λύσεων

Κατ οίκον Εργασία 2 Σκελετοί Λύσεων Κατ οίκον Εργασία 2 Σκελετοί Λύσεων 1. (α) Αλγόριθµος: ηµιούργησε το σύνολο P που αποτελείται από τα άκρα όλων των ευθυγράµµων τµηµάτων. Βρες το κυρτό περίβληµα του P µε τον αλγόριθµο του Graham. Ορθότητα:

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

Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17)

Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17) Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε Άπληστους Αλγόριθµους Στοιχεία άπληστων αλγορίθµων Το πρόβληµα επιλογής εργασιών ΕΠΛ 232

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

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

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

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

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων ΕΠΛ 1 Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 009 Κατ οίκον Εργασία 1 Σκελετοί Λύσεων Άσκηση 1 Αρχικά θα πρέπει να υπολογίσουμε τον αριθμό των πράξεων που μπορεί να εκτελέσει ο υπολογιστής σε μια ώρα,

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

Κατ οίκον Εργασία 2 Σκελετοί Λύσεων

Κατ οίκον Εργασία 2 Σκελετοί Λύσεων Κατ οίκον Εργασία 2 Σκελετοί Λύσεων 1. Ο αλγόριθµος κτίζει όλες τις δυνατές αναθέσεις εργασιών στους φοιτητές (υπάρχουν n! διαφορετικές αναθέσεις) και επιστρέφει εκείνη µε το µέγιστο βαθµό καταλληλότητας.

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

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

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

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

Αλγόριθµοι Οπισθοδρόµησης

Αλγόριθµοι Οπισθοδρόµησης Αλγόριθµοι Οπισθοδρόµησης Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Η οπισθοδρόµηση στο σχεδιασµό αλγορίθµων Το πρόβληµα των σταθερών γάµων και ο αλγόριθµος των Gale-Shapley Το πρόβληµα

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

Κατ οίκον Εργασία 3 Σκελετοί Λύσεων

Κατ οίκον Εργασία 3 Σκελετοί Λύσεων Άσκηση 1 Χρησιµοποιούµε τη δοµή Κατ οίκον Εργασία 3 Σκελετοί Λύσεων typedef struct Node int data; struct node *lchild; struct node *rbro; node; και υποθέτουµε πως ένα τυχαίο δένδρο είναι υλοποιηµένο ως

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

Αναδροµή. Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής

Αναδροµή. Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής Αναδροµή Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής 1 Αναδροµή Βασική έννοια στα Μαθηµατικά και στην Πληροφορική.

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

Βραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 25)

Βραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 25) Βραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 5) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Βραχύτερα Μονοπάτια για όλα τα Ζεύγη Λύση υναµικού Προγραµµατισµού Ο αλγόριθµος των Floyd-Warshal ΕΠΛ 3

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

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων ΕΠΛ Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 008 Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Παρατηρούμε ότι ο χρόνος εκτέλεσης μέσης περίπτωσης της κάθε εντολής if ξεχωριστά: if (c mod 0) for (k ; k

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

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

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ενότητα 5 υναµικός Προγραµµατισµός Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 5 1 / 49 Εισαγωγή

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 23: οµές εδοµένων και Αλγόριθµοι Ενδιάµεση Εξέταση Ηµεροµηνία : ευτέρα, 3 Νοεµβρίου 2008 ιάρκεια : 2.00-4.00 ιδάσκουσα : Άννα Φιλίππου Ονοµατεπώνυµο: ΣΚΕΛΕΤΟΙ

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

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων ΕΠΛ Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Αφού ξέρουμε με ακρίβεια τον αριθμό των βασικών πράξεων που εκτελεί ο κάθε αλγόριθμος σε δεδομένα μεγέθους, θα

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

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

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

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

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

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

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

Δοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή

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

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

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

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

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

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

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

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

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

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

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

Γεωµετρικοί Αλγόριθµοι (CLR, κεφάλαιο 35)

Γεωµετρικοί Αλγόριθµοι (CLR, κεφάλαιο 35) Γεωµετρικοί Αλγόριθµοι (CLR, κεφάλαιο 35) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Γινόµενα σηµεία, τοµή ευθυγράµµων τµηµάτων Εύρεση κυρτών περιβληµάτων: Ο αλγόριθµος του Grm και ο αλγόριθµος του

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

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

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

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

ΕΠΛ 232: Αλγόριθµοι και Πολυπλοκότητα. Κατ οίκον Εργασία 2A Σκελετοί Λύσεων

ΕΠΛ 232: Αλγόριθµοι και Πολυπλοκότητα. Κατ οίκον Εργασία 2A Σκελετοί Λύσεων ΕΠΛ 232: λγόριθµοι και Πολυπλοκότητα Κατ οίκον Εργασία 2A Σκελετοί Λύσεων 1. ια τη σαφή διατύπωση του αλγόριθµου απαιτούνται τα εξής: ιατήρηση της ροής που κτίζεται από τον αλγόριθµο. ιατήρηση της περίσσειας

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

Αριθµοθεωρητικοί Αλγόριθµοι και το. To Κρυπτοσύστηµα RSA

Αριθµοθεωρητικοί Αλγόριθµοι και το. To Κρυπτοσύστηµα RSA Αριθµοθεωρητικοί Αλγόριθµοι και το Κρυπτοσύστηµα RSA Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Υπολογισµός Μέγιστου Κοινού ιαιρέτη Αλγόριθµος του Ευκλείδη Κλάσεις Ισοδυναµίας και Αριθµητική modulo

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

Κατ οίκον Εργασία 3 Σκελετοί Λύσεων

Κατ οίκον Εργασία 3 Σκελετοί Λύσεων Κατ οίκον Εργασία 3 Σκελετοί Λύσεων Άσκηση 1 (α) Έστω Α(n) και Κ(n) ο αριθμός των ακμών και ο αριθμός των κόμβων ενός αυστηρά δυαδικού δένδρου με n φύλλα. Θέλουμε να αποδείξουμε για κάθε n 1 την πρόταση

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

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

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

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

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

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

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

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου,

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, Εφαρµογές στοιβών Στην ενότητα αυτή θα µελετηθεί η χρήση στοιβών στις εξής εφαρµογές: Αναδροµικές συναρτήσεις Ισοζυγισµός Παρενθέσεων Αντίστροφος Πολωνικός Συµβολισµός ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 23 Μαρτίου 2017 1 / 20 Επιλογή Το πρόβληµα

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

Outline. 6 Edit Distance

Outline. 6 Edit Distance Αλγόριθμοι και Πολυπλοκότητα Άπληστοι Αλγόριθμοι και Δυναμικός Προγραμματισμός Ασκήσεις CoReLab ΣΗΜΜΥ - Ε.Μ.Π. 16 Νοεμβρίου 216 (CoReLab - NTUA) Αλγόριθμοι - Ασκήσεις 16 Νοεμβρίου 216 1 / 52 Outline 1

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

Φροντιστήριο 4 Σκελετοί Λύσεων

Φροντιστήριο 4 Σκελετοί Λύσεων Φροντιστήριο 4 Σκελετοί Λύσεων Άσκηση 1 Υποθέτουμε πως οι λίστες είναι υλοποιημένες χρησιμοποιώντας τις πιο κάτω δομές. typedef struct Node{ type data; struct node *next; node; node *top; list; Υλοποιούμε

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

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

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

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

HY380 Αλγόριθμοι και πολυπλοκότητα Hard Problems

HY380 Αλγόριθμοι και πολυπλοκότητα Hard Problems HY380 Αλγόριθμοι και πολυπλοκότητα Hard Problems Ημερομηνία Παράδοσης: 0/1/017 την ώρα του μαθήματος ή με email: mkarabin@csd.uoc.gr Γενικές Οδηγίες α) Επιτρέπεται η αναζήτηση στο Internet και στην βιβλιοθήκη

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

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

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

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

Ορισµός. Εστω συναρτήσεις: 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

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

3η Σειρά Γραπτών Ασκήσεων

3η Σειρά Γραπτών Ασκήσεων 1/55 3η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 2/55 1 Άσκηση 1: Πομποί και Δέκτες 2 Άσκηση 2: Διακοπές στην Ικαρία 3 Άσκηση 3: Επιστροφή στη Γη 4 Άσκηση

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

Βασικές οµές εδοµένων

Βασικές οµές εδοµένων Βασικές οµές εδοµένων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αφηρηµένοι Τύποι εδοµένων Οι ΑΤ Στοίβα και Ουρά Υλοποίηση των ΑΤ Στοίβα και Ουρά µε ιαδοχική και υναµική Χορήγηση Μνήµης

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

Αλγόριθμοι και πολυπλοκότητα Διαίρει και Κυρίευε

Αλγόριθμοι και πολυπλοκότητα Διαίρει και Κυρίευε ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αλγόριθμοι και πολυπλοκότητα Διαίρει και Κυρίευε Ιωάννης Τόλλης Τμήμα Επιστήμης Υπολογιστών Διαίρει και Κυρίευε 7 9 4 4 7 9 7 7 9 4 4 9 7 7 9 9 4 4 Διαίρει και Κυρίευε

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

Ταξινόμηση με συγχώνευση Merge Sort

Ταξινόμηση με συγχώνευση Merge Sort Ταξινόμηση με συγχώνευση Merge Sort 7 2 9 4 2 4 7 9 7 2 2 7 9 4 4 9 7 7 2 2 9 9 4 4 Πληροφορικής 1 Διαίρει και Βασίλευε Η μέθοδος του «Διαίρει και Βασίλευε» είναι μια γενική αρχή σχεδιασμού αλγορίθμων

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

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

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

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

ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ20 Ε ρ γ α σ ί α 3η Θεωρία Γραφηµάτων

ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ20 Ε ρ γ α σ ί α 3η Θεωρία Γραφηµάτων ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ Ε ρ γ α σ ί α η Θεωρία Γραφηµάτων Α π α ν τ ή σ ε ι ς Ε ρ ω τ η µ ά τ ω ν Ερώτηµα. Στο παρακάτω γράφηµα µε βάρη, να βρεθεί το µήκος του µικρότερου µονοπατιού

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

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

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

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

ίκτυα Ταξινόµησης (CLR κεφάλαιο 28)

ίκτυα Ταξινόµησης (CLR κεφάλαιο 28) ίκτυα Ταξινόµησης (CLR κεφάλαιο 28) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: ίκτυα σύγκρισης, δίκτυα ταξινόµησης Αρχή - ιτονική ταξινόµηση ΕΠΛ 232 Αλγόριθµοι και Πολυπλοκότητα 2- Μοντέλο στο οποίο

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

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους Επίλυση Προβληµάτων µε Greedy Αλγόριθµους Περίληψη Επίλυση προβληµάτων χρησιµοποιώντας Greedy Αλγόριθµους Ελάχιστα Δέντρα Επικάλυψης Αλγόριθµος του Prim Αλγόριθµος του Kruskal Πρόβληµα Ελάχιστης Απόστασης

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

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

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

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

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Mergesort Κεφάλαιο 8. Ε. Μαρκάκης Επίκουρος Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Mergesort Κεφάλαιο 8. Ε. Μαρκάκης Επίκουρος Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ταξινόµηση Mergesort Κεφάλαιο 8 Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Ταξινόµηση µε συγχώνευση Αλγόριθµος Mergesort Διµερής συγχώνευση Αφηρηµένη επιτόπου συγχώνευση Αναλυτική ταξινόµηση

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

ΕΠΛ 231 Δομές Δεδομένων και Αλγόριθμοι 4-1

ΕΠΛ 231 Δομές Δεδομένων και Αλγόριθμοι 4-1 Εφαρμογές στοιβών Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Αναδρομικές συναρτήσεις Ισοζυγισμός Παρενθέσεων Αντίστροφος Πολωνικός Συμβολισμός ΕΠΛ 231 Δομές Δεδομένων και Αλγόριθμοι

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

3η Σειρά Γραπτών Ασκήσεων

3η Σειρά Γραπτών Ασκήσεων 1/48 3η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 2/48 1 Άσκηση 1: Πομποί και Δέκτες 2 Άσκηση 2: Διακοπές στην Ικαρία 3 Άσκηση 3: Επιστροφή στη Γη 4 Άσκηση

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

Κεφάλαιο 2. Παραγοντοποίηση σε Ακέραιες Περιοχές

Κεφάλαιο 2. Παραγοντοποίηση σε Ακέραιες Περιοχές Κεφάλαιο Παραγοντοποίηση σε Ακέραιες Περιοχές Γνωρίζουµε ότι στο Ÿ κάθε στοιχείο εκτός από το 0 και τα ± γράφεται ως γινόµενο πρώτων αριθµών κατά τρόπο ουσιαστικά µοναδικό Από τη Βασική Άλγεβρα ξέρουµε

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

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Λυσεις Ασκησεων - Φυλλαδιο 1

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Λυσεις Ασκησεων - Φυλλαδιο 1 ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Λυσεις Ασκησεων - Φυλλαδιο ιδασκοντες: Α. Μπεληγιάννης - Σ. Παπαδάκης Ιστοσελιδα Μαθηµατος : http://users.uoi.gr/abeligia/numbertheory/nt.html Τετάρτη 7 Φεβρουαρίου 03 Ασκηση. είξτε ότι

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

3 Αναδροµή και Επαγωγή

3 Αναδροµή και Επαγωγή 3 Αναδροµή και Επαγωγή Η ιδέα της µαθηµατικής επαγωγής µπορεί να επεκταθεί και σε άλλες δοµές εκτός από το σύνολο των ϕυσικών N. Η ορθότητα της µαθηµατικής επαγωγής ϐασίζεται όπως ϑα δούµε λίγο αργότερα

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

ροµολόγηση πακέτων σε δίκτυα υπολογιστών

ροµολόγηση πακέτων σε δίκτυα υπολογιστών ροµολόγηση πακέτων σε δίκτυα υπολογιστών Συµπληρωµατικές σηµειώσεις για το µάθηµα Αλγόριθµοι Επικοινωνιών Ακαδηµαϊκό έτος 2011-2012 1 Εισαγωγή Οι παρακάτω σηµειώσεις παρουσιάζουν την ανάλυση του άπληστου

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

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

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

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

Διδάσκων: Παναγιώτης Ανδρέου

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

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

I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11

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 Άσκηση

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

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

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

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

Αλγόριθµοι Ροής σε Γράφους (CLR, κεφάλαιο 27)

Αλγόριθµοι Ροής σε Γράφους (CLR, κεφάλαιο 27) Αλγόριθµοι Ροής σε Γράφους (CLR, κεφάλαιο 27) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: ίκτυα ροής και το πρόβληµα της µέγιστης ροής Η µεθοδολογία Ford-Fulkerson Ο αλγόριθµος Edmonds-Karps ΕΠΛ 232

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

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

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

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

Αναζήτηση. 1. Σειριακή αναζήτηση 2. Δυαδική Αναζήτηση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη

Αναζήτηση. 1. Σειριακή αναζήτηση 2. Δυαδική Αναζήτηση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Αναζήτηση. Σειριακή αναζήτηση. Δυαδική Αναζήτηση Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Παραδοχή Στη συνέχεια των διαφανειών (διαλέξεων) η ασυμπτωτική έκφραση (συμβολισμός Ο, Ω, Θ) του χρόνου

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

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή

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

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ ) ΑΠΑΝΤΗΣΕΙΣ Α ΕΡΓΑΣΙΑΣ. ( 8 µον.) Η άσκηση αυτή αναφέρεται σε διαιρετότητα και ρίζες πολυωνύµων. a. Να λυθεί η εξίσωση

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

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Λυσεις Ασκησεων - Φυλλαδιο 4

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Λυσεις Ασκησεων - Φυλλαδιο 4 ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Τµηµα Β Λυσεις Ασκησεων - Φυλλαδιο 4 ιδασκων: Α. Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://users.uoi.gr/abeligia/numbertheory/nt2016/nt2016.html Πέµπτη 10 Νοεµβρίου 2016 Ασκηση 1. Να ϐρεθούν

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

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

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

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

Σχεδίαση Αλγορίθμων -Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο

Σχεδίαση Αλγορίθμων -Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο Πολλαπλασιασμός μεγάλων ακεραίων (1) Για να πολλαπλασιάσουμε δύο ακεραίους με n 1 και n 2 ψηφία με το χέρι, θα εκτελέσουμε n 1 n 2 πράξεις πολλαπλασιασμού Πρόβλημα ρβημ όταν έχουμε πολλά ψηφία: A = 12345678901357986429

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

Διδάσκων: Παναγιώτης Ανδρέου

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

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

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

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

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

για NP-Δύσκολα Προβλήματα

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

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

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

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

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

τη µέθοδο της µαθηµατικής επαγωγής για να αποδείξουµε τη Ϲητούµενη ισότητα.

τη µέθοδο της µαθηµατικής επαγωγής για να αποδείξουµε τη Ϲητούµενη ισότητα. Αριστοτελειο Πανεπιστηµιο Θεσσαλονικης Τµηµα Μαθηµατικων Εισαγωγή στην Αλγεβρα Τελική Εξέταση 15 Φεβρουαρίου 2017 1. (Οµάδα Α) Εστω η ακολουθία Fibonacci F 1 = 1, F 2 = 1 και F n = F n 1 + F n 2, για n

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

auth Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο

auth Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο Σχεδίαση Αλγορίθμων Διαίρει και Βασίλευε http://delab.csd.auth.gr/courses/algorithms/ auth 1 Διαίρει και Βασίλευε Η γνωστότερη ρημέθοδος σχεδιασμού αλγορίθμων: 1. Διαιρούμε το στιγμιότυπο του προβλήματος

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

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

Διάλεξη 17: O Αλγόριθμος Ταξινόμησης HeapSort Διάλεξη 17: O Αλγόριθμος Ταξινόμησης HeapSort Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Η διαδικασία PercolateDown, Δημιουργία Σωρού O Αλγόριθμος Ταξινόμησης HeapSort Υλοποίηση, Παραδείγματα

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

ΑΛΓΕΒΡΙΚΕΣ ΟΜΕΣ Ι. Ασκησεις - Φυλλαδιο 2

ΑΛΓΕΒΡΙΚΕΣ ΟΜΕΣ Ι. Ασκησεις - Φυλλαδιο 2 ΑΛΓΕΒΡΙΚΕΣ ΟΜΕΣ Ι Τµηµα Β Ασκησεις - Φυλλαδιο 2 ιδασκων: Α. Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://users.uoi.gr/abeligia/algebraicstructuresi/asi2016/asi2016.html Πέµπτη 3 Μαρτίου 2016 Αν (G, ) είναι

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

Τεχνικές Σχεδιασμού Αλγορίθμων

Τεχνικές Σχεδιασμού Αλγορίθμων Τεχνικές Σχεδιασμού Αλγορίθμων Διαίρει και Βασίλευε Δυναμικός Προγραμματισμός Απληστία Π. Μποζάνης ΤHMMY - Αλγόριθμοι 2014-2015 1 Διαίρει και Βασίλευε Βασικά Βήματα Διαίρει: Κατάτμηση του αρχικού προβλήματος

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Θέµα 1 ο Α. Να απαντήσετε τις παρακάτω ερωτήσεις τύπου Σωστό Λάθος (Σ Λ) 1. Σκοπός της συγχώνευσης 2 ή περισσοτέρων ταξινοµηµένων πινάκων είναι η δηµιουργία

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

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις Επαναληψης

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις Επαναληψης ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις Επαναληψης ιδασκοντες: Α. Μπεληγιάννης - Σ. Παπαδάκης Ιστοσελιδα Μαθηµατος : http://users.uoi.gr/abeligia/numbertheory/nt.html Τετάρτη 22 Μαΐου 2013 Ασκηση 1. (1) Να λυθεί η γραµµική

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

ιδασκοντες: x R y x y Q x y Q = x z Q = x z y z Q := x + Q Τετάρτη 10 Οκτωβρίου 2012

ιδασκοντες: x R y x y Q x y Q = x z Q = x z y z Q := x + Q Τετάρτη 10 Οκτωβρίου 2012 ιδασκοντες: Αλγεβρικες οµες Ι Ασκησεις - Φυλλαδιο 1 Ν. Μαρµαρίδης - Α. Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://users.uoi.gr/abeligia/algebraicstructuresi/asi.html Τετάρτη 10 Οκτωβρίου 2012 Ασκηση 1.

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

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

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

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

Αρµονική Ανάλυση. Ενότητα: L p Σύγκλιση. Απόστολος Γιαννόπουλος. Τµήµα Μαθηµατικών

Αρµονική Ανάλυση. Ενότητα: L p Σύγκλιση. Απόστολος Γιαννόπουλος. Τµήµα Μαθηµατικών Ενότητα: L p Σύγκλιση Απόστολος Γιαννόπουλος Τµήµα Μαθηµατικών Αδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creaive Commos. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε

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

Κατ οίκον Εργασία 4 Σκελετοί Λύσεων

Κατ οίκον Εργασία 4 Σκελετοί Λύσεων Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Αναδρομική διαδικασία Η αναδρομική διαδικασία RecIsheap παίρνει ως παραμέτρους τον πίνακα, το μέγεθός του καθώς και το στοιχείο το οποίο θα τύχει επεξεργασίας.

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

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

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

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

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Λυσεις Ασκησεων - Φυλλαδιο 9

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Λυσεις Ασκησεων - Φυλλαδιο 9 ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Τµηµα Β Λυσεις Ασκησεων - Φυλλαδιο 9 ιδασκων: Α. Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://users.uoi.gr/abeligia/numbertheory/nt2016/nt2016.html Πέµπτη 12 Ιανουαρίου 2017 Ασκηση 1. Εστω

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

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

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

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

Πρόβληµα 2 (15 µονάδες)

Πρόβληµα 2 (15 µονάδες) ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ, 2013-2014 ΔΙΔΑΣΚΩΝ: Ε. Μαρκάκης Πρόβληµα 1 (5 µονάδες) 2 η Σειρά Ασκήσεων Προθεσµία Παράδοσης: 19/1/2014 Υπολογίστε

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

Κατ οίκον Εργασία 5 Σκελετοί Λύσεων

Κατ οίκον Εργασία 5 Σκελετοί Λύσεων Κατ οίκον Εργασία 5 Σκελετοί Λύσεων Άσκηση 1 (α) Ο αλγόριθµος χρησιµοποιεί τη διαδικασία DFS(v) η οποία, ως γνωστό, επισκέπτεται όλους τους κόµβους που είναι συνδεδεµένοι µε τον κόµβο v. Για να µετρήσουµε

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

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Ασκησεις - Φυλλαδιο 4

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Ασκησεις - Φυλλαδιο 4 ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι Τµηµα Β (ΑΡΤΙΟΙ) Ασκησεις - Φυλλαδιο 4 ιδασκων: Α Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://usersuoigr/abeligia/linearalgebrai/lai218/lai218html Παρασκευή 23 Νοεµβρίου 218 Ασκηση 1

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

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

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

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

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

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

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

Παράλληλοι Αλγόριθµοι

Παράλληλοι Αλγόριθµοι Παράλληλοι Αλγόριθµοι Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Το µοντέλο PRAΜ Πολλαπλασιασµός πινάκων Υπολογισµός αθροισµάτων προθέµατος ΕΠΛ 232 Αλγόριθµοι και Πολυπλοκότητα 13-1 Παράλληλοι Αλγόριθµοι

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

ΚΕΦΑΛΑΙΟ 3: Συνθήκες Αλυσίδων

ΚΕΦΑΛΑΙΟ 3: Συνθήκες Αλυσίδων ΚΕΦΑΛΑΙΟ 3: Συνθήκες Αλυσίδων Μελετάµε εδώ τη συνθήκη της αύξουσας αλυσίδας υποπροτύπων και τη συνθήκη της φθίνουσας αλυσίδας υποπροτύπων. Αυτές συνδέονται µεταξύ τους µε την έννοια της συνθετικής σειράς

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