ρυθμός αύξησης συναρτήσεων περιεχόμενα Ασυμπτωτικός συμβολισμός Καθιερωμένοι συμβολισμοί και συνήθεις συναρτήσεις Παύλος Εφραιμίδης 2 ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση Πολυπλοκότητα χειρότερης περίπτωσης Συγχωνευτική ταξινόμηση: Θ(lg) Ενθετική ταξινόμηση: Θ( 2 ) Για αρκετά μεγάλο μέγεθος εισόδου, η συγχωνευτική ταξινόμηση υπερτερεί της ενθετικής Το παραπάνω συμπέρασμα προκύπτει ανεξάρτητα από τις πολλαπλασιαστικές σταθερές και τους όρους κατώτερης τάξης στην πολυπλοκότητα χρόνου Δεδομένου ενός αλγορίθμου, για μεγάλα μεγέθη εισόδου μας ενδιαφέρει ο αυξητικός χαρακτήρας του χρόνου εκτέλεσης, δηλαδή ουσιαστικά η ασυμπτωτική επίδοση του αλγορίθμου. Ασχολούμαστε δηλαδή με το ρυθμό αύξησης του χρόνου εκτέλεσης στην οριακή περίπτωση που το μέγεθος της εισόδου αυξάνει απεριόριστα. 3 4 ασυμπτωτικός συμβολισμος ασυμπτωτικοί συμβολισμοί Χρησιμοποιούμε διάφορους συμβολισμούς για την ασυμπτωτικό χρόνο εκτέλεσης ενός αλγορίθμου Χρησιμοποιούμε συναρτήσεις με πεδίο ορισμού τους φυσικούς αριθμούς Ν={0,,2,...} Καταχρηστικά μπορεί να το χρησιμοποιούμε για διαφορετικά πεδία ορισμού Συμβολισμός Θ Συμβολισμός Ο Συμβολισμός Ω Συμβολισμός ο Συμβολισμός ω 6
συμβολισμός Θ της ενθετικής ταξινόμησης είναι T()=Θ( 2 ) Για δεδομένη συνάρτηση g(), το Θ(g()) Θ(g()) = {: θετικές σταθερές, 2 και 0 : 0 g() 2 g() 0 } =Θ(g()) Η συνάρτηση είναι ασυμπτωτικά φραγμένη από επάνω και από κάτω από τη συνάρτηση g(). 2 g() g() 0 7 8 συμβολισμός Ο της ενθετικής ταξινόμησης είναι T()=Ο( 2 ) Για δεδομένη συνάρτηση g(), το Ο(g()) Ο(g()) = {: θετικές σταθερές και 0 : 0 g() 0 } =Ο(g()) Ησυνάρτησηg() είναι ένα ασυμπτωτικό άνω φράγμα για τη συνάρτηση. g() 0 9 0 συμβολισμός Ω της ενθετικής ταξινόμησης είναι T()=Ω( 2 ) Για δεδομένη συνάρτηση g(), το Ω(g()) Ω(g()) = {: θετικές σταθερές και 0 : 0 g() 0 } =Ω(g()) Ησυνάρτησηg() είναι ένα ασυμπτωτικό κάτω φράγμα για τη συνάρτηση. g() 0 2 2
Συμβολισμός ο Για δεδομένη συνάρτηση g(), το ο(g()) ο(g()) = {: για οποιαδήποτε θετική σταθερά, υπάρχει σταθερά 0 : 0 <g() 0 } Το ο() δηλώνει ένα ασυμπτωτικά μη σφιχτό (tght) άνω όριο ή αλλιώς μη αυστηρό άνω όριο μιαερμηνείατουο() Μια διαφορετική ερμηνεία του συμβολισμού ο() είναι: Το = o(g()) σημαίνει ότι η συνάρτηση γίνεται αμελητέα σε σχέση με την g() καθώς το τείνει προς το άπειρο: f ( ) lm = 0 g( ) 3 4 Συμβολισμός ω μιαερμηνείατουω() Για δεδομένη συνάρτηση g(), το ω(g()) ω(g()) = {: για οποιαδήποτε θετική σταθερά, υπάρχει σταθερά 0 : 0 g()< 0 } Το ο() δηλώνει ένα ασυμπτωτικά μη σφιχτό (tght) κάτω όριο ή αλλιώς μη αυστηρό κάτω όριο Μια διαφορετική ερμηνεία του συμβολισμού ς() είναι: Το = ς(g()) σημαίνει ότι η συνάρτηση γίνεται αυθαίρετα μεγάλη σε σχέση με την g() καθώς το τείνει προς το άπειρο: f ( ) lm =,εάν υπάρχει το όριο. g ( ) 6 μονοτονία καθιερωμένη συμβολισμοί και συνήθεις συναρτήσεις Αύξουσες συναρτήσεις: συνάρτηση μονότονα αύξουσα: m, f(m) συνάρτηση γνησίως αύξουσα: m<, f(m)< Όμοια, φθίνουσες συναρτήσεις: μονότονα φθίνουσα γνησίως φθίνουσα 7 8 3
κατώφλι και ανώφλι υπολοιπική αριθμητική x πραγματικός αριθμός x κατώφλι του x: ο μεγαλύτερος ακέραιος που είναι μικρότερος ή ίσος του x x ανώφλι του x: ο μικρότερος ακέραιος που είναι μεγαλύτερος ή ίσος του x Ισχύει για κάθε πραγματικό αριθμό x: x x x < x x < + υπολοιπική αριθμητική (modulr rthmet) υπόλοιπο διαίρεσης: α: οποιοσδήποτε ακέραιος : οποιοσδήποτε θετικός ακέραιος τότε: mod = / Αν (α mod ) = ( mod ), γράφουμε (mod ) 9 20 πολυώνυμα Δοθέντος μη αρνητικού ακεραίου d, μια συνάρτηση p() της μορφής d p ( ) = = 0 είναι ένα πολυώνυμο του βαθμού d. Όταν =O( k ) για κάποια σταθερά k, λέμε ότι η συνάρτηση είναι πολυωνυμικά φραγμένη 0 εκθετικές = συναρτήσεις = = m ( ) = ( ) m m = m+ = m Για κάθε α, η συνάρτησηα είναι μονότονα αύξουσα ως προς. Συγκρίνετε την ασυμπτωτική συμπεριφορά της 2 με την. Αν α και πραγματικές σταθερές με α>, τι ισχύει γενικά για τις συναρτήσεις α και ; 2 22 λογάριθμοι ιδιότητες λογαρίθμων lg = 2 (δυαδικός λογάριθμος) l = e (φυσικός λογάριθμος) lg k = (lg) k (ύψωση σε δύναμη) lg lg = lg( lg )) (σύνθεση) Για πραγματικούς α>0,>0,>0 και : = ( ) = ( / ) = = = = = + 23 24 4
παραγοντικά Για ακέραιο 0, το! (διαβάζεται «παραγοντικό») ορίζεται ως:!=, για = 0 (-)!, για >0 Επομένως! = 2... επαναληπτική εφαρμογή συνάρτησης Για συνάρτηση επί των πραγματικών αριθμών και μη αρνητικό ακέριαο, ορίζουμε αναδρομικά: f () ()=, εάν = 0, f(f (-) ()), εάν > 0 2 26 επαναληπτική εφαρμογή λογαρίθμου αριθμοί Fo lg*: «λογάριθμος αστερίσκος του» ( ) Ορισμός: lg* = m{ 0 : lg } Η συνάρτηση αυξάνεται με πολύ αργό ρυθμό: lg* 2 lg* 6 = 3, lg* (2 =, 636 * 4 ) = = 2 lg* 636 = 4 Αν λάβουμε υπόψη ότι ο αριθμός των ατόμων στο παρατηρήσιμο σύμπαν εκτιμάται ότι είναι της τάξης του 0 80, αντιλαμβανόμαστε ότι είναι μάλλον απίθανο να συναντήσουμε τέτοιο ώστε lg* >. Οι αριθμοί Fo ορίζονται με την ακόλουθη αναδρομική σχέση: F 0 =0, F =, F =F - +F -2, για 2 Προκύπτει ότι: φ φ F =, όπου φ είναι ο λόγος της χρυσής τομής (golde rto): + φ =, φ = 2 2 27 28 Αναφορές/Πηγές Εισαγωγή στους αλγόριθμους, Κεφάλαιο 3 29