תרגול 3 - רקורסיות 3 שיטות עיקריות לפתור נוסחאות זמן ריצה רקורסיביות:

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΕΠΛ231 – Δομές Δεδομένων και Αλγόριθμοι
Advertisements

ΕΙΣΑΓΩΓΗ ΣΤΗ ΔΥΝΑΜΙΚΗ ΤΩΝ ΚΑΤΑΣΚΕΥΩΝ
Ενότητα 1.2 Αναδρομικές Σχέσεις Σχεδίαση & Ανάλυση Αλγορίθμων.
Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ - 4ο εξάμηνο1 Ανάλυση Αλγορίθμων b Θέματα: Ορθότητα Χρονική αποδοτικότητα Χωρική αποδοτικότητα Βελτιστότητα.
ΠΕΡΙΦΕΡΕΙΑΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΚΑΙ ΔΗΜΟΤΙΚΑ ΣΧΕΔΙΑ ΣΤΑ ΝΗΣΙΑ: ΕΜΠΕΙΡΙΕΣ ΚΑΙ ΣΥΜΠΕΡΑΣΜΑΤΑ ΝΙΚΟΣ ΣΕΛΛΑΣ, ΜΕΛΕΤΗΤΗΣ Workshops Αλεξανδρούπολη 15 Ιανουαρίου 2016.
Εφαρμογές ηλιακής ενέργειας στη θέρμανση θερμοκηπίων Τ.Ε.Ι. ΛΑΡΙΣΑΣ Σ.ΤΕ.Γ Τμήμα Γεωργικών Μηχανών και Αρδεύσεων Μάθημα: Έλεγχος Περιβάλλοντος Αγροτικών.
Διοίκηση Ανθρώπινου Δυναμικού (ΔΑΔ) Οι προκλήσεις του 21ου αιώνα έχουν καταστήσει τη Διοίκηση Ανθρώπινου Δυναμικού (ΔΑΔ) βασική προϋπόθεση επιβίωσης και.
Η ΜΕΤΡΗΣΗ ΤΗΣ ΜΑΖΑΣ ΚΑΙ ΤΟΥ ΒΑΡΟΥΣ. Τι είναι η μάζα ενός σώματος; Μάζα είναι το ποσό της ύλης που περιέχει ένα σώμα.
1 ΔΗΜΟΠΑΘΟΛΟΓΙΑ ΤΗΣ ΔΙΑΤΡΟΦΗΣ ΠΑΡΟΥΣΙΑΣΗ 5 Η (Θ) ΠΡΟΕΤΟΙΜΑΣΙΑ ΕΠΙΔΗΜΙΟΛΟΓΙΚΗΣ ΕΡΕΥΝΑΣ.
Παρουσίαση: Μπουζνεάν Σιμόνα-Μιχαέλα Σχολή: ΣΕΜΦΕ Διδάσκουσα: Λαμπροπούλου Σοφία.
ΜΕΛΕΤΗ ΚΑΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΠΡΟΜΗΘΕΙΩΝ ΣΕ ΔΗΜΟ ΜΕΛΕΤΗ ΠΕΡΙΠΤΩΣΗΣ: ΔΗΜΟΣ ΒΟΛΟΥ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΜΑΛΑΜΑΚΗΣ Α. Α.Τ.Ε.Ι. ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΑΡΑΡΤΗΜΑ.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Τεχνολογία Πρασίνου Ενότητα 2_1γ: Χλοοτάπητας: Εγκατάσταση Έτοιμου Χλοοτάπητα Καθηγητής Παναγιώτης Βύρλας Σχολή.
Τι είναι η Ακολουθία Φιμπονάτσι και ποιος ο ρόλος της στην Επιστήμη, στη βιολογία και στην τέχνη; 1o ΠΡΟΤΥΠΟ ΠΕΙΡΑΜΑΤΙΚΟ ΓΥΜΝΑΣΙΟ ΠΛΑΚΑΣ ΤΜΗΜΑ B΄3 ΘΕΜΑ.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ Μεταλλικές Κατασκευές Ι Διδάσκων Δημ. Σοφιανόπουλος Αναπληρωτής Καθηγητής Μαρία Ντίνα, Πολ. Μηχ. MSc,
Η ερευνά μας για το άπειρο
θεματικεσ μαθηματοσ Είδη επιστημονικών μελετών
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Ορισμοί Ιεραρχικός Μη γραμμικός τύπος δεδομένων Γονέας – Παιδιά
Ανάπτυξη Μοντέλων Διακριτών Συστημάτων Μέρος Α
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Εθνική επιλογή για την εφαρμογή της ΚΑΠ
Τμήμα Θεολογίας Α.Π.Θ.
Λογικός Σχεδιασμός Σχεσιακών Σχημάτων
Αντιπολεμικά Τραγούδια
ONTOFM: ΔΙΑΧΕΙΡΙΣΤΗΣ ΑΡΧΕΙΩΝ ΒΑΣΙΖΟΜΕΝΟΣ ΣΕ ΠΡΟΣΩΠΙΚΗ ΟΝΤΟΛΟΓΙΑ
Μοντελοποίηση ταυτοτήτων - Παραγοντοποίηση
Ο άνθρωπος πάντα αισθανόταν εγκλωβισμένος στη γη…
8ο Δ.Σ. Κορίνθου Νέα Προγράμματα Σπουδών
Επιμέλεια Τσάμης Δ. Ιωάννης Μαθηματικός
Δύναμη και κίνηση Γιατί το κιβώτιο σταματά;
Άσκηση 4 (7η Άσκηση εργαστηριακού οδηγού) Β Γυμνασίου
Ανεμοπιέσεις και φορτία θερμοκηπίων
Δικτυώματα (Δικτυωτοί Φορείς)
Γιατί τα πλοία επιπλέουν; Από τον Νεύτωνα στον Αρχιμήδη
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Άσκηση 3 Σώμα μάζας m=2kg ηρεμεί σε οριζόντιο επίπεδο. Κάποια στιγμή ασκούνται ταυτόχρονα στο σώμα δύο δυνάμεις F1=10N και F2=5N, όπως φαίνεται στο σχήμα.
Αξιολόγηση επενδύσεων
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
Θεωρία Πολιτισμικού Κεφαλαίου και Εκπαίδευση
Οι θέσεις του Συνδυασμού “ΕΛΠΙΔΑ” επί του Απολογισμού της Περιφερειακής Αρχής για το έτος 2016 ΚΟΖΑΝΗ
ΚΡΟΑΤΙΑ Γιώργος Τσιτογιάννης.
Μία πρακτική εισαγωγή στην χρήση του R
Ταξινόμηση και Γραφικές παραστάσεις ποιοτικών δεδομένων
ΣΤΑΤΙΣΤΙΚΗ Partalidou Xanthi, PhD Candidate, MSc, BSc.
ΤΕΙ Δυτικής Μακεδονίας Τμήμα Λογιστικής και Χρηματοοικονομικής
Οικιακή Οικονομία Α’ Γυμνασίου Μάθημα 6ο. Διδάσκων καθηγητής
Welcome to Who Wants to be a Millionaire
“Ενεργειακή Αναβάθμιση - Αυτοματοποίηση του Συστήματος Ηλεκτροφωτισμού Κοινοχρήστων Χώρων και εφαρμογές Smart Cities, με Εξοικονόμηση Ενέργειας.
Υπουργείο Παιδείας και Πολιτισμού Σχεδιασμός και Τεχνολογία
Отпор кретању тела.
Μεταπτυχιακά προγράμματα και εκπόνηση διδακτορικής διατριβής στο ΕΜΠ
موضوع ارائه : نظريه تقريب. موضوع ارائه : نظريه تقريب.
ΑΠΟΣΤΕΙΡΩΣΗ ΑΠΟΛΥΜΑΝΣΗ
Υλικό/ Αρχιτεκτονική Ηλεκτρονικών Υπολογιστών
Μοντέλο Kaiser Το μοντέλο στηρίζεται στην αρχή της προληπτικής δράσης.
THIẾT KẾ VÀ ĐÁNH GIÁ THUẬT TOÁN
TA ΦΩΝΗΕΝΤΑ ΤΗΣ ΚΝΕ Χαρακτηριστικά φωνηέντων:
تئوری الاستیسیته Theory of Elasticity كريم عابدي.
Тербелістер мен толқындар
Homework Questions….
ΙΝΣΤΙΤΟΥΤΟ ΕΛΛΗΝΙΚΟΥ ΓΑΛΑΚΤΟΣ
Ασφαλής χρήση του κινητού τηλεφώνου
Μοντέλο DPSIR Για την εφαρμογή των απαιτήσεων της Οδηγίας 2000/60/Ε.Κ για την ανάλυση των πιέσεων χρησιμοποιείται το μοντέλο DPSIR. Αναπτύχθηκε από τον.
Эксперыментальныя метады ядзернай фізікі
«Τα ανθρώπινα Δικαιώματα»
ΠΡΟΣΑΡΜΟΓΗ ΠΕΙΡΑΜΑΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΕ ΘΕΩΡΗΤΙΚΕΣ ΚΑΤΑΝΟΜΕΣ
1ος νΟμος του ΝεΥτωνα Αν η συνισταμένη των δυνάμεων που ασκούνται σε ένα σώμα είναι ίση με μηδέν (ΣF=0N) τότε το σώμα ή θα ηρεμεί (υ=0) ΣF= 0 F υ=0 B.
ΕΥΡΩΠΑΪΚΗ ΕΝΕΡΓΕΙΑΚΗ ΠΟΛΙΤΙΚΗ 3 (ΔΕΥΤΕΡΟΓΕΝΕΣ ΔΙΚΑΙΟ)
Διαδικτυακός Εκφοβισμός
Μεταγράφημα παρουσίασης:

תרגול 3 - רקורסיות 3 שיטות עיקריות לפתור נוסחאות זמן ריצה רקורסיביות: הצבה: מנחשים את הפתרון ואז מוכיחים אותו באינדוקציה איטרציה: מפתחים "עד הסוף" ומנסים לחשב נוסחא סגורה לסכום שהתקבל Master Theorem

Master Theorem נתון: 𝑇(𝑛)=𝑎𝑇( 𝑛 𝑏 )+𝑓(𝑛) רעיון (לא פורמלי ולא מדוייק): נתון: 𝑇(𝑛)=𝑎𝑇( 𝑛 𝑏 )+𝑓(𝑛) רעיון (לא פורמלי ולא מדוייק): נשווה את f(n) עם 𝑛 log 𝑏 𝑎 ונראה "מי יותר דומיננטי" כללים: אם 𝑓 𝑛 =𝑂( 𝑛 log 𝑏 𝑎 −𝜖 ) אז 𝑇 𝑛 =𝜃 𝑛 log 𝑏 𝑎 אם 𝑓 𝑛 =𝜃( 𝑛 log 𝑏 𝑎 ) אז 𝑇 𝑛 =𝜃 𝑛 log 𝑏 𝑎 ⋅ log 𝑛 אם 𝑓 𝑛 =Ω( 𝑛 log 𝑏 𝑎 +𝜖 ) וגם קיים c<1 כך ש 𝑎𝑓 𝑛 𝑏 <𝑐⋅𝑓 𝑛 לכל n מספיק גדול אז 𝑇 𝑛 =𝜃(𝑓 𝑛 ) הערה: מקרה 2 המוכלל - אם 𝑓 𝑛 =𝜃( 𝑛 log 𝑏 𝑎 log 𝑘 𝑛 ) אז 𝑇 𝑛 =𝜃 𝑛 log 𝑏 𝑎 ⋅ log k+1 𝑛

תרגיל 1 מצאו את זמני הריצה של הנוסחאות הרקורסיביות הבאות: T(n) = 7T(n/2) + n2 T(n) = 4T(n/2) + n2 T(n) = 2T(n/3) + n3

תרגיל 1 מצאו את זמני הריצה של הנוסחאות הרקורסיביות הבאות: T(n) = 7T(n/2) + n2 Answer: a = 7, b = 2, f(n) = n2 𝑛 log 𝑏 𝑎 = 𝑛 2.803… 𝑛 2 =𝑂 𝑛 2.8 =𝑂 𝑛 log 𝑏 𝑎 −𝜖 𝑇(𝑛)=𝜃( 𝑛 log 2 7 )

תרגיל 1 מצאו את זמני הריצה של הנוסחאות הרקורסיביות הבאות: T(n) = 4T(n/2) + n2 Answer: a = 4, b = 2, f(n) = n2 𝑛 log 𝑏 𝑎 = 𝑛 2 𝑛 2 =𝜃 𝑛 log 𝑏 𝑎 𝑇(𝑛)=𝜃( 𝑛 2 log 𝑛 )

תרגיל 1 מצאו את זמני הריצה של הנוסחאות הרקורסיביות הבאות: T(n) = 2T(n/3) + n3 Answer: a = 2, b = 3, f(n) = n3 𝑛 log 𝑏 𝑎 = 𝑛 0.63… 𝑛 3 =Ω 𝑛 0.7 =𝑂 𝑛 log 𝑏 𝑎 +𝜖 𝑐<1 𝑎𝑛𝑑 2⋅𝑓 𝑛 3 = 2 𝑛 3 3 3 ≤𝑐 𝑛 3 Take c=0.5 𝑇(𝑛)=𝜃( 𝑛 3 ) ⇔ 2 27 <𝑐<1

תרגיל 2 נתון ש T(1)=1 𝑇 𝑛 =𝑇 𝑛 2 + 𝑛 הראו ש 𝑇 𝑛 =𝑂 𝑛 𝑇 𝑛 =𝑇 𝑛 2 + 𝑛 הראו ש 𝑇 𝑛 =𝑂 𝑛 ללא שימוש בMaster Theorem פתרון בשיטת ההצבה: נניח 𝑇 𝑘 ≤4 𝑘 לכל k<n ואז 𝑇 𝑛 = 𝑇 𝑛 2 + 𝑛 ≤4 𝑛 2 + 𝑛 = 4 2 +1 𝑛 ≤4 𝑛 כנדרש

תרגיל 2 נתון ש T(1)=1 𝑇 𝑛 =𝑇 𝑛 2 + 𝑛 הראו ש 𝑇 𝑛 =𝑂 𝑛 𝑇 𝑛 =𝑇 𝑛 2 + 𝑛 הראו ש 𝑇 𝑛 =𝑂 𝑛 איך ידענו לנחש c=4? פתרון: נניח 𝑇 𝑘 ≤𝑐 𝑘 לכל k<n ואז 𝑇 𝑛 = 𝑇 𝑛 2 + 𝑛 ≤𝑐 𝑛 2 + 𝑛 = 𝑐 2 +1 𝑛 ≤𝑐 𝑛 כלומר, היינו צריכים למצוא c כך ש 𝑐 2 +1 ≤𝑐

תרגיל 3 מצאו את זמן הריצה של הנוסחא הרקורסיביות הבאה: For all j<a, 𝑇(𝑗)=𝑇(𝑎)=𝜃(1) T(n)=T(n-a)+T(a)+n פתרון: נפתח בשיטת האיטרציה 𝑇 𝑛 =𝑇 𝑛−𝑎 +𝑇 𝑎 +𝑛 = 𝑇 𝑛−2𝑎 +𝑇 𝑎 + 𝑛−𝑎 +𝑇 𝑎 +𝑛 = 𝑇 𝑛−3𝑎 +𝑇 𝑎 + 𝑛−2𝑎 +2𝑇 𝑎 +2𝑛−𝑎 =𝑇 𝑛−3𝑎 +3𝑇 𝑎 +3𝑛−2𝑎−𝑎=… =𝑇 𝑛−𝑖𝑎 +𝑖∗𝑇 𝑎 +𝑖∗𝑛− 𝑘=1 𝑖−1 𝑘∗𝑎 =𝑇 𝑛−𝑖∗𝑎 +𝑖∗𝑇 𝑎 +𝑖∗𝑛−𝑎∗ 𝑖∗ 𝑖−1 2

תרגיל 3 i≈ 𝑛 𝑎 −1 ⇐𝑛−𝑖⋅𝑎≤𝑎 המשך: קבלנו את הנוסחא הבאה עבור האיטרציה הi מצאו את זמן הריצה של הנוסחא הרקורסיביות הבאה: For all j<a, 𝑇(𝑗)=𝑇(𝑎)=𝜃(1) T(n)=T(n-a)+T(a)+n המשך: קבלנו את הנוסחא הבאה עבור האיטרציה הi 𝑇 𝑛 =𝑇 𝑛−𝑖∗𝑎 +𝑖∗𝑇 𝑎 +𝑖∗𝑛−𝑎∗ 𝑖∗ 𝑖−1 2 מה הi שנציב בנוסחא? (כלומר, כמה איטרציות יש סה"כ?) i≈ 𝑛 𝑎 −1 ⇐𝑛−𝑖⋅𝑎≤𝑎

תרגיל 3 המשך: נציב 𝑖= 𝑛 𝑎 −1 בנוסחא ונקבל ולכן 𝑻 𝒏 =𝜣( 𝒏 𝟐 ) מצאו את זמן הריצה של הנוסחא הרקורסיביות הבאה: For all j<a, 𝑇(𝑗)=𝑇(𝑎)=𝜃(1) T(n)=T(n-a)+T(a)+n המשך: נציב 𝑖= 𝑛 𝑎 −1 בנוסחא ונקבל 𝑇 𝑛 =𝑇 𝑛− 𝑛 𝑎 −1 𝑎 + 𝑛 𝑎 −1 𝑇 𝑎 + 𝑛 𝑎 −1 𝑛−𝑎 1 2 𝑛 𝑎 −1 𝑛 𝑎 −2 =𝑇 𝑎 + 𝑛 𝑎 𝑇 𝑎 −𝑇 𝑎 + 𝑛 2 𝑎 −𝑛− 𝑎 2 ∗ 𝑛 2 𝑎 2 − 3𝑛 𝑎 +2 = 𝑛 𝑎 𝑇 𝑎 + 𝑛 2 𝑎 −𝑛− 𝑛 2 2𝑎 + 3𝑛 2 −𝑎= 𝑛 𝑎 𝑇 𝑎 + 𝑛 2 2𝑎 + 𝑛 2 −𝑎 =𝛩 𝑛 𝛩 1 +𝛩 𝑛 2 +𝛩 𝑛 =𝛩( 𝑛 2 ) ולכן 𝑻 𝒏 =𝜣( 𝒏 𝟐 )

תרגיל 4 מצאו שיטה איטרטיבית ושיטה רקורסיבית למציאת האיבר הn בסדרת פיבונצ'י f(n), ונתחו את זמני הריצה f(0)=0 f(1)=1 f(i)=f(i-1)+f(i-2), i>1 שיטה איטרטיבית: זמן ריצה: 𝜃(𝑛)

תרגיל 4 מצאו שיטה איטרטיבית ושיטה רקורסיבית למציאת האיבר הn בסדרת פיבונצ'י f(n), ונתחו את זמני הריצה f(0)=0 f(1)=1 f(i)=f(i-1)+f(i-2), i>1 שיטה רקורסיבית: זמן הריצה מוגדר ע"י הנוסחא הרקורסיבית T(n)=T(n-1)+T(n-2)+1

תרגיל 4 המשך: חסמו את הנוסחא הרקורסיבית הבאה מלמעלה ומלטה T(n)=T(n-1)+T(n-2)+1 כדי לחסום מלמעלה נשתמש באי-שיוויון T(n)=T(n-1)+T(n-2)+1 ≤ 2T(n-1)+1 כדי לחסום מלמטה נשתמש באי-שיוויון T(n)=T(n-1)+T(n-2)+1 ≥ 2T(n-2)+1

תרגיל 4 המשך: T(n) ≤ 2T(n-1) +1 ≤ 2(2T(n-2) +1) +1 ≤2(2(2T(n-3) +1) +1) +1 ≤ …≤ ≤ 2kT(n-k)+ 𝑖=1 𝑘 2 𝑖 נציב k=n-1 ונקבל 𝑇 𝑛 =𝑂( 2 𝑛−1 + 2 𝑛−1 )=𝑂( 2 𝑛 )

תרגיל 4 המשך: באופן דומה T(n) ≥ 2T(n-2) +1 ≥ 2(2T(n-4) +1) +1 ≥ 2(2(2T(n-6) +1) +1) +1 ≥ … ≥ ≥ 2kT(n-2k)+ 𝑖=1 𝑘 2 𝑖 נציב 𝑘= 𝑛−1 2 ונקבל 𝑇 𝑛 =Ω( 2 𝑛−1 2 + 2 𝑛−1 2 )=Ω( 2 𝑛 2 )

תרגיל 5 מצאו את זמן הריצה של הנוסחא הרקורסיבית הבאה: T(n) = 9T(n/3) + 𝑛2log⁡(𝑛) Answer: Master Theorem a = 9, b = 3, 𝑓(𝑛) = 𝑛2log⁡(𝑛) 𝑛 log 𝑏 𝑎 = 𝑛 2 𝑛 2 log 𝑛 =𝜃 𝑛 log 𝑏 𝑎 log 𝑛 𝑇(𝑛)=𝜃( 𝑛 2 log 2 𝑛 )

תרגיל 6 הציאו שיטה רקורסיבית לפתרון בעיית מגדלי הנוי ומצאו את זמן הריצה שלה

תרגיל 6 מצאו שיטה רקורסיבית לפתרון בעיית מגדלי הנוי ומצאו את זמן הריצה שלה פתרון: זמן הריצה מתואר ע"י הנוסחא הרקורסיבית T(n)=2T(n-1)+1

תרגיל 6 T(n) = 2T(n-1) +1 = 2(2T(n-2) +1) +1 מצאו שיטה רקורסיבית לפתרון בעיית מגדלי הנוי ומצאו את זמן הריצה שלה פתרון, המשך: T(n)=2T(n-1)+1 נפתור בשיטת האיטרציה T(n) = 2T(n-1) +1 = 2(2T(n-2) +1) +1 =2(2(2T(n-3) +1) +1) +1 = …= = 2kT(n-k)+ 𝑖=1 𝑘 2 𝑖 נציב k=n-1 ונקבל 𝑇 𝑛 = 2 𝑛−1 𝑇 1 + 2 𝑛−1 −1=𝜃 2 𝑛 האם אפשר לפתור גם בשיטת ההצבה?