SlideShare uma empresa Scribd logo
1 de 10
Baixar para ler offline
Αλγόριθµοι & Πολυπλοκότητα

    1ο Σύνολο Ασκήσεων




Γιαννούσης Κωνσταντίνος (ΑΜ 1115201000225)
   Τµήµα Πληροφορικής & Τηλεπικοινωνιών
Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών




  copyright © 2011 by Constantine Yannoussis
1
Ποια είναι η ελάχιστη τιµή του n για την οποία ένας αλγόριθµος µε χρόνο
εκτέλεσης 100n2 εκτελείται γρηγορότερα από έναν αλγόριθµο µε χρόνο εκτέ-
λεσης 2n στην ίδια µηχανή ;



    Αυτό που Ϲητάµε ουσιαστικά είναι για ποια ελάχιστη τιµή του n ισχύει η
ανισότητα 100n2 < 2n .
    Για να µπορέσουµε να ϐρούµε την ελάχιστη τιµή του n δουλεύουµε παίρ-
νοντας την ισότητα 100n2 = 2n . Θέλουµε δηλαδή αρχικά να ϐρούµε για ποια
τιµή οι δύο χρόνοι εκτέλεσης είναι ίσοι.
    Θεωρούµε λοιπόν τη συνάρτηση f (n) = 100n2 − 2n . Από την λύση της
εξίσωσης f (n) = 0 ϐρίσκουµε τις ϱίζες δηλαδή τις τιµές όπου οι δυο χρόνοι
είναι ίσοι. Κατόπιν ϑα ελέγξουµε τις πλησιέστερες ακέραιες τιµές στις ϱίζες
για να ϐρούµε αυτές που να ικανοποιούν τη Ϲητούµενη ανίσωση.
    ΄Ετσι, µετά από υπολογισµούς καταλήγουµε σε τρεις ϱίζες της εξίσωσης
100n2 − 2n :
                              n1 0.103658
                              n2 −0.096704
                              n3  14.3247
    ΄Οπως ϕαίνεται, µεταξύ των ϱιζών n1 και n2 υπάρχει µοναδικός ακέραιος
το 0 ο οποίος όµως δεν ανήκει στην f (n). Επίσης, για αρνητικές τιµές του
n γίνεται άµεσα αντιληπτό πως δεν ικανοποιείται η Ϲητούµενη ανίσωση. ΄Ε-
τσι καταφεύγουµε στην τρίτη ϱίζα, την n3 , και ελέγχουµε τις ακέραιες τιµές
εκατέρωθεν της ϱίζας αυτής, δηλαδή, τις τιµές n = 14 και n = 15:

    • Για n = 14 έχουµε :
      100 · 142 = 19600
      214 = 16384
      ∆ηλαδή, 100n2 > 2n .

    • Για n = 15 έχουµε :
      100 · 152 = 22500
      215 = 32768
      ∆ηλαδή, ισχύει η Ϲητούµενη ανίσωση 100n2 < 2n .

   Αν συνεχίζαµε τον έλεγχο και για πιο µεγάλες τιµές του n ϑα παρατηρού-
σαµε ότι ϑα εξακολουθούσε να ισχύει η ανίσωση.
   Συνεπώς, στο πρόβληµά µας, η µικρότερη ακέραια τιµή του n για την
οποία ισχύει ότι ο χρόνος εκτέλεσης 100n2 εκτελείται γρηγορότερα από το
χρόνο εκτέλεσης 2n στην ίδια µηχανή, είναι η n = 15.




                                    1
2
Για κάθε συνάρτηση f (n) και χρόνο t στον παρακάτω πίνακα, ϐρείτε το µέ-
γιστο µέγεθος n του στιγµιοτύπου ενός προβλήµατος που µπορεί να λυθεί σε
χρόνο t, υποθέτοντας ότι ο αλγόριθµος που λύνει το πρόβληµα απαιτεί f (n)
microseconds.

 f (n)t    1 δευτερόλεπτο            1 λεπτό               1 ώρα

                       6                     7                    9
 log n             210                 26·10                23.6·10
 n                 106                6 · 107              3.6 · 109
 nlogn           62746.1           2.80142 · 106
                                     √                   6.0482 · 107
 n2                103                 60 · 103             6 · 104
 2n              log 106            log(6 · 107 )       log(3.6 · 109 )

3
΄Εστω f, f1 , f2 , g, g1 , g2 , h ϑετικές συναρτήσεις. Αποφασίστε αν οι παρακάτω
προτάσεις είναι αληθείς ή ψευδείς. ∆ικαιολογήστε τις απαντήσεις σας.

    1. f (n) = Ω(g(n)) ⇒ g(n) = O(f (n))
       Από τον ορισµό του Ω(g(n)) ισχύει ότι f (n) = Ω(g(n)) αν υπάρχουν
       ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| ≥ c|g(n)| για κάθε n > k .
       Οπότε αφού c > 0 τότε ϑα ισχύει και 1 |f (n)| ≥ |g(n)| για κάθε n > k .
                                           c
       Συνεπώς, αν ϑέσουµε c = 1 τότε ϑα ισχύει |g(n)| ≤ c |f (n)| για κάθε
                                 c
       n > k.
       ∆ηλαδή, σύµφωνα µε τον ορισµό του Big − O notation πρόταση f (n) =
       Ω(g(n)) ⇒ g(n) = O(f (n)) είναι αληθής.

    2. n! = Θ(n log n)
       ΄Εστω ότι ισχύει n! = Θ(n log n). Εποµένως, n! = O(n log n), ΄Εστω
       συνάρτηση g(n) = 2n . Αποδεικνύεται ότι g(n) = O(n!)
       ( 2n = 2 · 2 · . . . 2 ≤ 2 · 3 · . . . n = n!)
                  n times
       οπότε κατ΄ επέκταση ϑα ισχύει και 2n = O(n log n). Κάτι τέτοιο όµως
       είναι άτοπο, εποµένως η αρχική πρόταση δεν ισχύει.

    3. f (n) = ω(g(n)) ⇒ f (n) = Ω(g(n))
       Από τον ορισµό του ω(g(n)) ισχύει ότι f (n) = ω(g(n)) αν υπάρχουν
       ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| > c|g(n)| για κάθε n > k .
       Αφού λοιπόν έχουµε από τα δεδοµένα ότι αυτό ισχύει, δηλαδή ότι |f (n)| >
       c|g(n)| ϑα ισχύει και ότι για c , k ϑετικές σταθερές έχουµε |f (n)| ≥
       c |g(n)| για κάθε n > k . Θα έχουµε δηλαδή ότι ισχύει f (n) = Ω(g(n)).

                                                 2
4. Αν f (n) = O(g(n)) και f (n) = Ω(h(n)) ⇒ g(n) = Θ(h(n))
  Από τον ορισµό του Big-O notation έχουµε ότι f (n) = O(g(n)) ισχύει
  όταν υπάρχουν ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| ≤ c|g(n)|
  για κάθε n > k .
  Επίσης από τον ορισµό του Big-Ω notation έχουµε ότι f (n) = Ω(h(n))
  ισχύει όταν υπάρχουν ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| ≥
  c |h(n)| για κάθε n > k .
  Για να ισχύει λοιπόν το g(n) = Θ(h(n)), ϑα πρέπει να δείξουµε ότι
  ισχύει g(n) = O(h(n)) και ταυτόχρονα g(n) = Ω(h(n)).
  Από τα δεδοµένα έχουµε ότι f (n) = O(g(n)), δηλαδή ότι και g(n) =
  Ω(f (n)) (ϐλέπε απόδειξη 1 ίδιας άσκησης). Επίσης από τα δεδοµένα
  έχουµε f (n) = Ω(h(n)). ΄Ετσι ϑα υπάρχουν c και k ϑετικά τέτοια
  ώστε να ισχύει και |g(n)| ≥ c|f (n)| ≥ c |h(n)| ⇒ |g(n)| ≥ c |h(n)|,
  δηλαδή, g(n) = Ω(h(n)).
  ΄Οµως ϕαίνεται ότι το αντίθετο δεν ισχύει, δηλαδή, δεν ισχύει ότι g(n) =
  O(h(n)). Θα προσπαθήσουµε να δείξουµε ότι δεν ισχύει µε ένα αντιπα-
  ϱάδειγµα.
  ΄Εστω, οι συναρτήσεις h(n) = log n, f (n) = n και g(n) = n log n.
  Εύκολα αποδεικνύουµε ότι οι συναρτήσεις είναι της µορφής που Ϲητάµε,
  δηλαδή ισχύει f (n) = Ω(h(n)) και f (n) = O(g(n)) που είναι και η
  αρχική συνθήκη και συνεπώς ισχύει και το συµπέρασµα ότι g(n) =
  Ω(h(n)) που δείξαµε πιο πάνω.
  ΄Εστω ότι ισχύει η συνθήκη ότι g(n) = O(h(n)), ότι δηλαδή, n log n =
  O(log n). Υπάρχουν λοιπόν ϑετικά l και m τέτοια ώστε |n log n| ≤
  l| log n| για κάθε n > m. ΄Οταν n ≤ l η σχέση αυτή ϕαίνεται να ι-
  σχύει, αφού µιλάµε για ϑετικές ποσότητες. ΄Οταν όµως το n αυξάνει ενώ
  το l είναι µια σταθερή ποσότητα και κάποια στιγµή ϑα είναι n > l, οπότε
  η ανισότητα |n log n| ≤ l| log n| δεν ϑα ισχύει. ΄Ετσι µπορούµε να πούµε
  ότι τελικά η ανισότητα |n log n| ≤ l| log n| δεν ισχύει για κάθε n > k , και
  εποµένως δεν ισχύει η αρχική συνθήκη.
  Συνεπώς, η πρόταση δεν είναι αληθής.

5. 4n2 + 5n − 9 = Ω(10n2 )
  Από τη ϑεωρία γνωρίζουµε ότι µια πολυωνυµική συνάρτηση έχει τάξη
  (Θ) τον όρο µε το µεγαλύτερο εκθέτη.
  Συνεπώς, η τάξη της f (n) = 4n2 + 5n − 9 = Θ(n2 ). Αυτό σηµαίνει
  επίσης ότι, f (n) = Ω(n2 ).
  Κατά τον ίδιο τρόπο g(n) = 10n2 = Θ(n2 ) και εποµένως g(n) = Ω(n2 ).
  Οπότε η πρόταση ισχύει.



                                    3
6. log(n!) = Θ(n log n)
   Στο πρώτο ϐήµα της απόδειξης, ϑα δείξουµε ότι ισχύει log(n!) = O(n log n).

                 n! = 1 · 2 . . . n − 1 · n ≤ n · n . . . n ⇒ n! ≤ nn

   Εποµένως
                           log n! ≤ log nn ⇒ log n! ≤ n log n
   ΄Ετσι υπάρχουν ϑετικές ποσότητες c, k τέτοιες ώστε | log n!| ≤ c|n log n|,
   για κάθε n ≥ k , δηλαδή, ισχύει ότι log(n!) = O(n log n).
   Αφού αποδείξαµε το πρώτο µέρος, αποµένει να δείξουµε ότι ισχύει και
   log(n!) = Ω(n log n).
   ΄Ετσι,
                     n n            n              n n     nn2
                n! ≥    · ( + 1) · ( + 2) · . . . ( + ) ≥      ⇒
                     2 2            2              2  2    2
                               nn2              n    n
                          n! ≥     ⇒ log n! ≥ log ⇒
                               2                2    2
                            n                   1        1
                     n! ≥ (log n − log 2) = n log n − n
                            2                   2        2
   Εποµένως υπάρχουν ϑετικές ποσότητες c , k τέτοιες ώστε | log n!| ≥
   c|n log n|, για κάθε n ≥ k , δηλαδή, ισχύει ότι log(n!) = Ω(n log n).
   Συνεπώς η πρόταση είναι αληθής.

7. f (n) + g(n) = Θ(min(g(n), f (n)))
   Γνωρίζουµε ότι ισχύει το f (n) = Θ(f (n)) και g(n) = Θ(g(n)). Επίσης
   ισχύει ότι f (n) + g(n) = Ω(min(g(n), f (n))). Συνεπώς για να ισχύει η
   πρόταση ϑα πρέπει να ισχύει ότι f (n) + g(n) = O(min(g(n), f (n))).
   ΄Εστω ότι f (n) + g(n) = O(min(g(n), f (n))) ισχύει. Οπότε έστω οι
   συναρτήσεις f (n) = n και g(n) = 2n . Συνεπώς min(f (n), g(n)) =
   f (n) = n. ΄Αρα από την αρχική υπόθεση ϑα είναι n + 2n = O(n). Κάτι
   τέτοιο δεν ισχύει οπότε και η πρόταση f (n)+g(n) = O(min(g(n), f (n)))
   δεν ισχύει.
   Συνεπώς, και η αρχική πρόταση δεν ισχύει.
            √          √
8. n + 2 n = Ω(n n)
   Από το ϑεώρηµα ισχύει ότι f (n) + g(n) = Ω(min(g(n), f (n))). Επίσης,
                            √                             √
   αν f (n) = n και g(n) = 2 n, τότε, min(f (n), g(n)) = 2 n = g(n), για
   κάθε n > 4.
                                                  √
   Οπότε αρκεί να δείξουµε ότι η g(n) = Ω(n n). ΄Εστω ότι ισχύει g(n) =
      √
   Ω(n n). ∆ηλαδή υπάρχουν ϑετικές ποσότητες c, k τέτοιες ώστε |g(n)| ≥
      √
   c|n n|, για κάθε n > k . ΄Εχουµε δηλαδή,
                                   √       √        √
                       |g(n)| ≥ c|n n| ⇒ |2 n| ≥ c|n n| ⇒

                                        4
√    c √       √         √
                              | n| ≥ |n n| ⇒ | n| ≥ c |n n|
                                    2
        Κάτι τέτοιο είναι άτοπο για ϑετικές ποσότητες οπότε ισχύει η πρόταση
                    √
        g(n) = Ω(n n) και συνεπώς ισχύει η αρχική πρόταση.

    9. Αν f (n) = O(g(n)) και g(n) = Ω(f (n)) ⇒ f (n) = Θ(g(n))
        Για να ισχύει η πρόταση αυτή ϑα έπρεπε να ισχύει f (n) = O(g(n)) και
        g(n) = O(f (n)). ΄Οµως επειδή δεν γνωρίζουµε αν g(n) = O(f (n)),
        αλλά µόνο ότι g(n) = Ω(f (n)) τότε η πρόταση δεν ισχύει.
        Αν η πρόταση µας έλεγε ότι ισχύει f (n) = O(g(n)) και g(n) = Θ(f (n))
        τότε η πρόταση ϑα ήταν αληθής.


4
Χωρίστε τη λίστα των συναρτήσεων σε κλάσεις, τέτοιες ώστε οι f (n) και g(n)
να ανήκουν στην ίδια κλάση αν και µόνο αν f (n) = Θ(g(n)). Στη συνέχεια
επιλέξτε έναν εκπρόσωπο από κάθε κλάση και κατατάξτε τους κατά αύξουσα
σειρά πολυπλοκότητας

          n                 n2 −n               n
    •             = ... =     2     οπότε            = Θ(n2 )
          2                                     2

    • n log n = Θ(n log n)
          n   1
    •     k=1 k    = log n + c = Θ(log n)

    • 8n2 = Θ(n2 )
            √                               1
    • log       log n = log(log n)1/2 =     2   log log n = Θ(log log n)

    • n! = Θ(n!)

    • log log n = Θ(log log n)

    • nlog n = Θ(nlog n )

    • log n! = Θ(n log n)
                                2
    • 4log n = 22 log n = 2log n = n2 = Θ(n2 )

          n        n
    •     k=0           = 2n = Θ(2n )
                   k
          2
    • 2log n = 2log n log n = nlog n = Θ(nlog n )

    • 10100 = Θ(10100 )

    • 2n = Θ(2n )


                                                 5
• log n = Θ(log n)
       √                             1/2         √      √
    • ( 2)log n = 21/2 log n = 2log n    = n1/2 = n = Θ( n)

    • (n − 1)! = Θ((n − 1)!)

    • log nn = n log n = Θ(n log n)

    • 5800 = Θ(5800 )
        √            √
    • 5 n = Θ( n)

    Οπότε κατηγοριοποιώντας έχουµε :

         n
    •             = 8n2 = 4log n = Θ(n2 )
         2

    • n log n = log n! = log nn = Θ(n log n)
            √
    • log       log n = log log n = Θ(log log n)
                   2
    • nlog n = 2log n = Θ(nlog n )
        √                √        √
    • ( 2)log n = 5 n = Θ( n)

         n         n
    •    k=0             = 2n = Θ(2n )
                   k

    • 5800 = 10100 = Θ(1)

    • (n − 1)! = Θ((n − 1)!)

    • n! = Θ(n!)
                     n   1
    • log n =        k=1 k   = Θ(log n)

   Αν επιλέξουµε έναν αντιπρόσωπο από κάθε κλάση µπορούµε να ταξινοµή-
σουµε τις κλάσεις ως εξής :


                               √
    10100 , log log n, log n, 5 n, n log n, 8n2 , nlog n , 2n , (n − 1)!, n!


5
Για κάθε Ϲεύγος εκφράσεων (A, B) του παρακάτω πίνακα αποφασίστε αν το
Α είναι Ο, ο, Ω, ω ή Θ του Β. Υποθέστε ότι οι k ≥ 1,          > 0 και c > 1
είναι σταθερές. Απαντήστε σηµειώνοντας ένα `ναι΄ ή ένα `όχι΄ σε κάθε ϑέση του
πίνακα.



                                            6
Α         Β        Ο         ο       Ω     ω       Θ

     a.   logk n      n        ναι       ναι
     b.     nk        cn       ναι       ναι
     c.     2n      2n/2                         ναι   ναι
     d.    nlog c   clog n     ναι               ναι         ναι

                         A
Παίρνουµε το όριο limn→∞ B . ΄Ετσι έχουµε,

a.
                              logk n ∞      k logk−1 n ·           1
                                                                   n
                             lim    = ∞ lim                            =
                           n→∞ n        n→∞      n −1
                                  k logk−1 n               k!
                              lim            = . . . = lim k
                              n→∞      n              n→∞    n
     Οπότε,
                                                  k!       1
                                          lim          =     =0
                                         n→∞ k n           ∞

     Εποµένως, logk n = o(n ) ⇒ logk n = O(n ).

b.
                                      nk ∞          knk−1  ∞
                                   lim   = ∞ lim n        =∞
                               n→∞ cn        n→∞ c · ln c

                                               k!       1
                               . . . = lim            =   =0
                                       n→∞ cn · lnk c   ∞

     Εποµένως, nk = o(cn ) ⇒ nk = O(cn ).

c.
                         2n        2n/2+n/2       2n/2 2n/2
                     lim     = lim          = lim           =
                    n→∞ 2n/2  n→∞    2n/2    n→∞    2n/2
                                               lim 2n/2 = ∞
                                               n→∞

     Εποµένως, 2n = ω(2n/2 ) ⇒ 2n = Ω(2n/2 ).

d.
                                                    nlog c
                                                 lim
                                                n→∞ clog n

     ΄Οµως γνωρίζουµε ότι nlog c = clog n , συνεπώς

                                                   nlog c
                                               lim        =1
                                               n→∞ clog n

     Εποµένως, nlog c = Θ(clog n ).



                                                  7
6
       Ποια είναι η πολυπλοκότητα των παρακάτω τµηµάτων προγράµµατος ;

Αλγόριθµος 1
                                    n                 n                  n                n
                                    2        n2       4                  2       n2       4

                                                          Θ(1) = Θ(1)                             1
                                  i=1 j=1 k=1                           i=1 j=1 k=1

               οπότε,
                                                          n 2 n          n4
                                             Θ(1) ·         · n · = Θ(1)
                                                          4      2       8
               Εποµένως ο αλγόριθµος είναι τάξης Θ(n4 ).

Αλγόριθµος 2
                              n−1       2i        j                     n−1      2i           j
                                    (        (        Θ(1))) = Θ(1)          (        (           1))
                               i=1 j=1 k=1                              i=1 j=1 k=1

               ΄Ετσι υπολογίζουµε :
                        j       (1+1)j
                        k=1 1 =    2   =j
                        2i      (1+ni)ni        2 2
                        j=1 j =     2    = ni+n i
                                              2
                                                        2
                       n−1 ni+n2 i2
                       i=1      2     = i=1 ( ni + (ni) ) =
                                            n−1
                                                2     2
                       n−1 ni         n−1 (ni)2
                       i=1 ( 2 +      i=1     2 =
                    n    n−1       n2     n−1 2
                    2    i=1 i + 2        i=1 i =
                    n (1+(n−1))(n−1)         2
                    2         2         + n (n−1)((n−1)+1)(2(n−1)+1)
                                            2           6                             =
                    n (n2 −n)     n2 n(n−1)(2n−1)
                    2    2    + 2           6     =
                    n3 −n     n3 (n−1)(2n−1)
                      4    +         12

               Οπότε τελικά, ο αλγόριθµος προκύπτει ότι είναι τάξης Θ(n5 ).


       7
       Να υπολογίσετε τον χρόνο εκτέλεσης µέσης περίπτωσης του αλγορίθµου 3, δε-
       δοµένου ότι γνωρίζουµε πως το στοιχείο που ψάχνουµε (το k ) ϐρίσκεται στην
       τελευταία ϑέση µε πιθανότητα 1/4, στην προτελευταία ϑέση µε πιθανότητα
       1/4, ενώ η πιθανότητα να ϐρίσκεται σε οποιαδήποτε από τις υπόλοιπες n − 2
                              1
       ϑέσεις είναι ίση µε 4(n−2) , n ≥ 3.



           Αν ϑεωρήσουµε ως Dn το σύνολο των διαφορετικών εισόδων στο πρόβληµα
       και d ∈ D µια είσοδό του τότε :


                                                             8
• Πολυπλοκότητα στην ϐέλτιστη περίπτωση (Best Case Scenario):
         Cbcs (n) = min{κόστος(d), d ∈ Dn }
         Αν το k είναι το πρώτο στοιχείο της ακολουθίας, τότε ϑα κάνει 2 συγκρί-
         σεις (από τον έλεγχο της WHILE) και µια καταχώρηση (i = 0). Αν το
         k είναι το δεύτερο στοιχείο της ακολουθίας, τότε ϑα κάνει 4 συγκρίσεις
         και 2 καταχωρήσεις και γενικά αν είναι το i−οστό στοιχείο ϑα κάνει 2i
         συγκρίσεις και i καταχωρήσεις.

    • Πολυπλοκότητα στην χείριστη περίπτωση(Worst Case Scenario):
         Cwcs (n) = max{κόστος(d), d ∈ Dn }
         Στη χειρότερη περίπτωση που το k δεν ανήκει στην ακολουθία, τότε ο
         αλγόριθµος ϑα εκτελέσει 2n + 2 συγκρίσεις (στην τελευταία επανάληψη
         υποθέτουµε ότι ϑα κάνει και τις δύο συγκρίσεις) και n+1 καταχωρήσεις.
         Η πιθανότητα να µην ϐρίσκεται το k στην ακολουθία είναι

                                                     1     2    n−2
                p = 1 − p ⇒ p = 1 − ((n − 2)              + )=
                                                  4(n − 2) 4   4(n − 2)

    • Πολυπλοκότητα κατά µέσο όρο :
         Cµo (n) =   d∈Dn   p(d)κόστος(d)
         Η κατά µέσο όρο πολυπλοκότητα, είναι πόσες πράξεις κάνει (ή πόση
         µνήµη δεσµεύει) ο αλγόριθµος κατά µέσο όρο. ΄Ετσι µετράµε τις πράξεις
         (κόστος(d)) που κάνει ο αλγόριθµος για κάθε δυνατή είσοδο d ∈ Dn που
         δίνεται µε πιθανότητα p(d).

    ΄Ετσι έχουµε πολυπλοκότητα κατά µέσο όρο (για συγκρίσεις):

                                     1           1
                      Cµo (n) =            2+          4 + ...
                                  4(n − 2)    4(n − 2)
                      1          1      n−2
                     + 2(n − 1) + 2n +          2(n + 1)
                      4          4     4(n − 2)
΄Ετσι,
                                                n−2
                                       1                     6n − 1
                        Cµo (n) =                     2i +
                                    4(n − 2)                   4
                                                i=0




                                            9

Mais conteúdo relacionado

Mais procurados

Η εξίσωση του κύματος στις η+1 διαστάσεις
Η εξίσωση του κύματος στις η+1 διαστάσειςΗ εξίσωση του κύματος στις η+1 διαστάσεις
Η εξίσωση του κύματος στις η+1 διαστάσειςJohn Fiorentinos
 
ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2
ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2
ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2Dimitris Psounis
 
Ελατήριο με δύο μάζες
Ελατήριο με δύο μάζεςΕλατήριο με δύο μάζες
Ελατήριο με δύο μάζεςJohn Fiorentinos
 
Ελατήριο ανάμεσα σε δύο μάζες
Ελατήριο ανάμεσα σε δύο μάζεςΕλατήριο ανάμεσα σε δύο μάζες
Ελατήριο ανάμεσα σε δύο μάζεςJohn Fiorentinos
 
ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4
ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4
ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4Dimitris Psounis
 

Mais procurados (20)

Η εξίσωση του κύματος στις η+1 διαστάσεις
Η εξίσωση του κύματος στις η+1 διαστάσειςΗ εξίσωση του κύματος στις η+1 διαστάσεις
Η εξίσωση του κύματος στις η+1 διαστάσεις
 
Rayleigh jeans
Rayleigh   jeansRayleigh   jeans
Rayleigh jeans
 
ΠΛΗ30 ΜΑΘΗΜΑ 6.2
ΠΛΗ30 ΜΑΘΗΜΑ 6.2ΠΛΗ30 ΜΑΘΗΜΑ 6.2
ΠΛΗ30 ΜΑΘΗΜΑ 6.2
 
Planck
PlanckPlanck
Planck
 
ΠΛΗ30 ΤΕΣΤ 9
ΠΛΗ30 ΤΕΣΤ 9ΠΛΗ30 ΤΕΣΤ 9
ΠΛΗ30 ΤΕΣΤ 9
 
ΠΛΗ30 ΜΑΘΗΜΑ 6.3
ΠΛΗ30 ΜΑΘΗΜΑ 6.3ΠΛΗ30 ΜΑΘΗΜΑ 6.3
ΠΛΗ30 ΜΑΘΗΜΑ 6.3
 
ΠΛΗ30 ΜΑΘΗΜΑ 2.1
ΠΛΗ30 ΜΑΘΗΜΑ 2.1ΠΛΗ30 ΜΑΘΗΜΑ 2.1
ΠΛΗ30 ΜΑΘΗΜΑ 2.1
 
ΠΛΗ30 ΜΑΘΗΜΑ 2.2
ΠΛΗ30 ΜΑΘΗΜΑ 2.2ΠΛΗ30 ΜΑΘΗΜΑ 2.2
ΠΛΗ30 ΜΑΘΗΜΑ 2.2
 
Lec3 number systems_number_theory
Lec3 number systems_number_theoryLec3 number systems_number_theory
Lec3 number systems_number_theory
 
ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2
ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2
ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 6.2
 
Aoristo olokliroma
Aoristo olokliromaAoristo olokliroma
Aoristo olokliroma
 
Protypo ladahl
Protypo  ladahlProtypo  ladahl
Protypo ladahl
 
ΠΛΗ30 ΤΕΣΤ 10
ΠΛΗ30 ΤΕΣΤ 10ΠΛΗ30 ΤΕΣΤ 10
ΠΛΗ30 ΤΕΣΤ 10
 
ΠΛΗ30 ΜΑΘΗΜΑ 1.1
ΠΛΗ30 ΜΑΘΗΜΑ 1.1ΠΛΗ30 ΜΑΘΗΜΑ 1.1
ΠΛΗ30 ΜΑΘΗΜΑ 1.1
 
δύο μαθηματικά εκκρεμή με
δύο μαθηματικά εκκρεμή με  δύο μαθηματικά εκκρεμή με
δύο μαθηματικά εκκρεμή με
 
Ελατήριο με δύο μάζες
Ελατήριο με δύο μάζεςΕλατήριο με δύο μάζες
Ελατήριο με δύο μάζες
 
Ελατήριο ανάμεσα σε δύο μάζες
Ελατήριο ανάμεσα σε δύο μάζεςΕλατήριο ανάμεσα σε δύο μάζες
Ελατήριο ανάμεσα σε δύο μάζες
 
ΠΛΗ30 ΤΕΣΤ 4
ΠΛΗ30 ΤΕΣΤ 4ΠΛΗ30 ΤΕΣΤ 4
ΠΛΗ30 ΤΕΣΤ 4
 
Parousiasi d.ntrizou
Parousiasi d.ntrizouParousiasi d.ntrizou
Parousiasi d.ntrizou
 
ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4
ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4
ΠΛΗ30 ΚΑΡΤΑ ΜΑΘΗΜΑ 1.4
 

Destaque

Bài tập về dãy số kaczor, mt nowak
Bài tập về dãy số   kaczor, mt nowakBài tập về dãy số   kaczor, mt nowak
Bài tập về dãy số kaczor, mt nowakThế Giới Tinh Hoa
 
Giải giúp nha cac p
Giải giúp nha cac pGiải giúp nha cac p
Giải giúp nha cac pHoang Tu Duong
 
παράγωγος 3
παράγωγος 3παράγωγος 3
παράγωγος 3Kozalakis
 
672.представляющие системы теория и приложения
672.представляющие системы теория и приложения672.представляющие системы теория и приложения
672.представляющие системы теория и приложенияefwd2ws2qws2qsdw
 
μαρία καραμεσίνη
μαρία καραμεσίνημαρία καραμεσίνη
μαρία καραμεσίνηChristos Loizos
 
Phong cách ngôn ngữ tiếng việt
Phong cách ngôn ngữ tiếng việtPhong cách ngôn ngữ tiếng việt
Phong cách ngôn ngữ tiếng việtHọc Huỳnh Bá
 
[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung
[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung
[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hungĐức Mạnh Ngô
 
μαθηματικό τυπολόγιο
μαθηματικό τυπολόγιομαθηματικό τυπολόγιο
μαθηματικό τυπολόγιοChristos Loizos
 
διακριτά μαθηματικά
διακριτά μαθηματικάδιακριτά μαθηματικά
διακριτά μαθηματικάChristos Loizos
 
đề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.com
đề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.comđề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.com
đề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.comThế Giới Tinh Hoa
 
Math prosanatolismou lyceum_b
Math prosanatolismou lyceum_bMath prosanatolismou lyceum_b
Math prosanatolismou lyceum_bChristos Loizos
 
đề Cương ôn tập môn ngữ văn 11truonghocso.com
đề Cương ôn tập môn ngữ văn 11truonghocso.comđề Cương ôn tập môn ngữ văn 11truonghocso.com
đề Cương ôn tập môn ngữ văn 11truonghocso.comThế Giới Tinh Hoa
 
Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10
Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10
Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10Thế Giới Tinh Hoa
 

Destaque (20)

Bài tập về dãy số kaczor, mt nowak
Bài tập về dãy số   kaczor, mt nowakBài tập về dãy số   kaczor, mt nowak
Bài tập về dãy số kaczor, mt nowak
 
μεθοδολογια συναρτησεων 2
μεθοδολογια συναρτησεων 2μεθοδολογια συναρτησεων 2
μεθοδολογια συναρτησεων 2
 
2 math mama_bkk
2 math mama_bkk2 math mama_bkk
2 math mama_bkk
 
Giải giúp nha cac p
Giải giúp nha cac pGiải giúp nha cac p
Giải giúp nha cac p
 
Math auth
Math authMath auth
Math auth
 
E3 f1 bộ binh
E3 f1 bộ binhE3 f1 bộ binh
E3 f1 bộ binh
 
Công trình
Công trìnhCông trình
Công trình
 
παράγωγος 3
παράγωγος 3παράγωγος 3
παράγωγος 3
 
672.представляющие системы теория и приложения
672.представляющие системы теория и приложения672.представляющие системы теория и приложения
672.представляющие системы теория и приложения
 
μαρία καραμεσίνη
μαρία καραμεσίνημαρία καραμεσίνη
μαρία καραμεσίνη
 
Day them toan 11
Day them toan 11Day them toan 11
Day them toan 11
 
Các bài toán tổ hợp 11
Các bài toán tổ hợp 11Các bài toán tổ hợp 11
Các bài toán tổ hợp 11
 
Phong cách ngôn ngữ tiếng việt
Phong cách ngôn ngữ tiếng việtPhong cách ngôn ngữ tiếng việt
Phong cách ngôn ngữ tiếng việt
 
[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung
[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung
[Vnmath.com] bai giang-trong_tam_ve_ham_so_thay_dang_viet_hung
 
μαθηματικό τυπολόγιο
μαθηματικό τυπολόγιομαθηματικό τυπολόγιο
μαθηματικό τυπολόγιο
 
διακριτά μαθηματικά
διακριτά μαθηματικάδιακριτά μαθηματικά
διακριτά μαθηματικά
 
đề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.com
đề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.comđề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.com
đề Cương ôn tập ngữ văn 12 học kì i năm học 2011 2012truonghocso.com
 
Math prosanatolismou lyceum_b
Math prosanatolismou lyceum_bMath prosanatolismou lyceum_b
Math prosanatolismou lyceum_b
 
đề Cương ôn tập môn ngữ văn 11truonghocso.com
đề Cương ôn tập môn ngữ văn 11truonghocso.comđề Cương ôn tập môn ngữ văn 11truonghocso.com
đề Cương ôn tập môn ngữ văn 11truonghocso.com
 
Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10
Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10
Hướng dẫn thực hiện chuẩn kiến thức, kĩ năng toán 10
 

Semelhante a Algorithms - Exercise 1

Οι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisari
Οι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisariΟι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisari
Οι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisariFanis Margaronis
 
Themata kai lyseis_mathimatikwn_epan_2021_l
Themata kai lyseis_mathimatikwn_epan_2021_lThemata kai lyseis_mathimatikwn_epan_2021_l
Themata kai lyseis_mathimatikwn_epan_2021_lChristos Loizos
 
ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2
ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2
ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2Dimitris Psounis
 
Mαθηματικά I
Mαθηματικά IMαθηματικά I
Mαθηματικά Iaris_ant
 
Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)
Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)
Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)Μάκης Χατζόπουλος
 
28 9636diag paragogoi_mexri_rythmo(2015-16)
28 9636diag paragogoi_mexri_rythmo(2015-16)28 9636diag paragogoi_mexri_rythmo(2015-16)
28 9636diag paragogoi_mexri_rythmo(2015-16)Christos Loizos
 
2015 τριγωνομετρια
2015 τριγωνομετρια2015 τριγωνομετρια
2015 τριγωνομετριαStratis Malliakas
 
ΠΛΗ30 Τυπολόγιο Ενότητας 1
ΠΛΗ30 Τυπολόγιο Ενότητας 1ΠΛΗ30 Τυπολόγιο Ενότητας 1
ΠΛΗ30 Τυπολόγιο Ενότητας 1Dimitris Psounis
 
6 Ασκήσεις Αριθμητικής Ανάλυσης
6 Ασκήσεις Αριθμητικής Ανάλυσης6 Ασκήσεις Αριθμητικής Ανάλυσης
6 Ασκήσεις Αριθμητικής ΑνάλυσηςTasos Lazaridis
 
Σημειώσεις στις Σειρές
Σημειώσεις στις ΣειρέςΣημειώσεις στις Σειρές
Σημειώσεις στις ΣειρέςMath Studies
 
Math pros 2020_neo_them_lyseis_l
Math pros 2020_neo_them_lyseis_lMath pros 2020_neo_them_lyseis_l
Math pros 2020_neo_them_lyseis_lChristos Loizos
 
απειροστικός ιιι (μερκουράκης)
απειροστικός ιιι (μερκουράκης)απειροστικός ιιι (μερκουράκης)
απειροστικός ιιι (μερκουράκης)Christos Loizos
 
εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4
εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4
εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4Γιάννης Πλατάρος
 
Προσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο Σχολή
Προσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο ΣχολήΠροσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο Σχολή
Προσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο ΣχολήΜάκης Χατζόπουλος
 

Semelhante a Algorithms - Exercise 1 (20)

Οι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisari
Οι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisariΟι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisari
Οι λύσεις μου σε θέματα γνωστών συγγραφέων για το lisari
 
ΠΛΗ30 ΜΑΘΗΜΑ 1.3
ΠΛΗ30 ΜΑΘΗΜΑ 1.3ΠΛΗ30 ΜΑΘΗΜΑ 1.3
ΠΛΗ30 ΜΑΘΗΜΑ 1.3
 
Themata kai lyseis_mathimatikwn_epan_2021_l
Themata kai lyseis_mathimatikwn_epan_2021_lThemata kai lyseis_mathimatikwn_epan_2021_l
Themata kai lyseis_mathimatikwn_epan_2021_l
 
ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2
ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2
ΠΛΗ30 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2
 
Mαθηματικά I
Mαθηματικά IMαθηματικά I
Mαθηματικά I
 
Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)
Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)
Πλήρεις σημειώσεις στον Ολοκληρωτικό λογισμό (2015 - 16)
 
28 9636diag paragogoi_mexri_rythmo(2015-16)
28 9636diag paragogoi_mexri_rythmo(2015-16)28 9636diag paragogoi_mexri_rythmo(2015-16)
28 9636diag paragogoi_mexri_rythmo(2015-16)
 
2015 τριγωνομετρια
2015 τριγωνομετρια2015 τριγωνομετρια
2015 τριγωνομετρια
 
2015 τριγωνομετρια
2015 τριγωνομετρια2015 τριγωνομετρια
2015 τριγωνομετρια
 
λύση ασκ. 21
λύση ασκ. 21λύση ασκ. 21
λύση ασκ. 21
 
ΠΛΗ30 Τυπολόγιο Ενότητας 1
ΠΛΗ30 Τυπολόγιο Ενότητας 1ΠΛΗ30 Τυπολόγιο Ενότητας 1
ΠΛΗ30 Τυπολόγιο Ενότητας 1
 
λυση ασκ 10
λυση ασκ 10λυση ασκ 10
λυση ασκ 10
 
31η αναρτηση
31η αναρτηση31η αναρτηση
31η αναρτηση
 
6 Ασκήσεις Αριθμητικής Ανάλυσης
6 Ασκήσεις Αριθμητικής Ανάλυσης6 Ασκήσεις Αριθμητικής Ανάλυσης
6 Ασκήσεις Αριθμητικής Ανάλυσης
 
Σημειώσεις στις Σειρές
Σημειώσεις στις ΣειρέςΣημειώσεις στις Σειρές
Σημειώσεις στις Σειρές
 
Math pros 2020_neo_them_lyseis_l
Math pros 2020_neo_them_lyseis_lMath pros 2020_neo_them_lyseis_l
Math pros 2020_neo_them_lyseis_l
 
απειροστικός ιιι (μερκουράκης)
απειροστικός ιιι (μερκουράκης)απειροστικός ιιι (μερκουράκης)
απειροστικός ιιι (μερκουράκης)
 
λυση ασκ. 14
λυση ασκ. 14λυση ασκ. 14
λυση ασκ. 14
 
εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4
εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4
εφαρμοζομενα μαθηματικα σε ενα φυλλο χαρτι α4
 
Προσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο Σχολή
Προσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο ΣχολήΠροσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο Σχολή
Προσομοιωτικό διαγώνισμα μέχρι το Διαφορικό Λογισμό από τη Βαρβάκειο Σχολή
 

Último

ΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdf
ΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdfΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdf
ΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdfssuser2f8893
 
Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...
Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...
Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...Areti Arvithi
 
Εκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptx
Εκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptxΕκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptx
Εκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptx36dimperist
 
Μοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptx
Μοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptxΜοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptx
Μοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptx36dimperist
 
ΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docx
ΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docxΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docx
ΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docxtheologisgr
 
Πρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptx
Πρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptxΠρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptx
Πρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptxntanavara
 
Παρουσίαση καλλιτεχνικού θεάματος
Παρουσίαση          καλλιτεχνικού θεάματοςΠαρουσίαση          καλλιτεχνικού θεάματος
Παρουσίαση καλλιτεχνικού θεάματοςDimitra Mylonaki
 
Κωνσταντής σημειώσεις κείμενα νεοελληνικής
Κωνσταντής σημειώσεις κείμενα νεοελληνικήςΚωνσταντής σημειώσεις κείμενα νεοελληνικής
Κωνσταντής σημειώσεις κείμενα νεοελληνικήςssuser44c0dc
 
B2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗ
B2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗB2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗ
B2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗChrisa Kokorikou
 
Επίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptx
Επίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptxΕπίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptx
Επίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptx7gymnasiokavalas
 
ΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptx
ΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptxΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptx
ΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptxtheologisgr
 
ΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτερα
ΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτεραΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτερα
ΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτεραssuser2bd3bc
 
Εξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptx
Εξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptxΕξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptx
Εξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptxntanavara
 
ΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITY
ΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITYΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITY
ΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITYΜαρία Διακογιώργη
 
Οι στόχοι των παιδιών
Οι στόχοι των                       παιδιώνΟι στόχοι των                       παιδιών
Οι στόχοι των παιδιώνDimitra Mylonaki
 
Ξενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptx
Ξενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptxΞενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptx
Ξενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptxDimitraKarabali
 
Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.
Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.
Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.Michail Desperes
 
Η κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - Πέννα
Η κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - ΠένναΗ κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - Πέννα
Η κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - ΠένναΣάσα Καραγιαννίδου - Πέννα
 
Παρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας Άρτας
Παρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας ΆρταςΠαρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας Άρτας
Παρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας Άρταςsdeartas
 

Último (20)

ΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdf
ΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdfΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdf
ΒΑΣΙΚΕΣ ΔΕΞΙΟΤΗΤΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΣΥΜΒΟΥΛΕΥΤΙΚΗΣ ΙI (Σημειώσεις 3ης Εβδομάδας).pdf
 
Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...
Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...
Παρατήρηση Κυττάρων στο Μικροσκόπιο _ παρουσίαση /Observation of cells under ...
 
Εκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptx
Εκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptxΕκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptx
Εκπαιδευτική Επίσκεψη στην Πάρνηθα ΑΠΡΙΛΙΟΣ 2024.pptx
 
Μοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptx
Μοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptxΜοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptx
Μοσχομύρισε το σχολείο. Πασχαλινά κουλουράκια από τους μαθητές της Γ΄ τάξης.pptx
 
ΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docx
ΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docxΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docx
ΣΔΕ Ιεράπετρας ερωτηματολόγιο - ecomobility .docx
 
Πρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptx
Πρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptxΠρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptx
Πρόγραμμα - Πάμε μια βόλτα στο φεγγάρι.pptx
 
Παρουσίαση καλλιτεχνικού θεάματος
Παρουσίαση          καλλιτεχνικού θεάματοςΠαρουσίαση          καλλιτεχνικού θεάματος
Παρουσίαση καλλιτεχνικού θεάματος
 
Κωνσταντής σημειώσεις κείμενα νεοελληνικής
Κωνσταντής σημειώσεις κείμενα νεοελληνικήςΚωνσταντής σημειώσεις κείμενα νεοελληνικής
Κωνσταντής σημειώσεις κείμενα νεοελληνικής
 
B2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗ
B2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗB2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗ
B2 TΑΞΗ -ΜΗΝΥΜΑΤΑ ΓΙΑ ΤΑ ΑΔΕΣΠΟΤΑ.pdf-ΜΑΡΚΕΛΛΑ ΤΣΑΤΣΑΡΩΝΗ
 
Επίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptx
Επίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptxΕπίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptx
Επίσκεψη μαθητών στην Έκθεση Η Μαγεία των Μοτίβων.pptx
 
ΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptx
ΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptxΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptx
ΣΔΕ Ιεράπετρας παρουσίαση - ecomobility.pptx
 
ΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτερα
ΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτεραΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτερα
ΚΛΙΣΗ ΟΥΣΙΑΣΤΙΚΩΝ αρσενικιά θηλυκιά ουδέτερα
 
Εξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptx
Εξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptxΕξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptx
Εξερευνώντας τα μυστήρια του ουρανού-Παρουσίαση.pptx
 
Στο μουσείο
Στο                                        μουσείοΣτο                                        μουσείο
Στο μουσείο
 
ΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITY
ΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITYΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITY
ΤΑ ΚΕΙΜΕΝΑ ΤΗΣ ΠΑΡΟΥΣΙΑΣΗΣ ΓΙΑ ΤΟ ΔΙΑΓΩΝΙΣΜΟ ECOMOBILITY
 
Οι στόχοι των παιδιών
Οι στόχοι των                       παιδιώνΟι στόχοι των                       παιδιών
Οι στόχοι των παιδιών
 
Ξενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptx
Ξενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptxΞενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptx
Ξενάγηση στο ιστορικό κέντρο των Ιωαννίνων.pptx
 
Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.
Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.
Σχέδιο Μικρο-διδασκαλίας στη Γεωγραφία.
 
Η κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - Πέννα
Η κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - ΠένναΗ κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - Πέννα
Η κυρία Αλφαβήτα και τα παιδιά της. Της Σάσας Καραγιαννίδου - Πέννα
 
Παρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας Άρτας
Παρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας ΆρταςΠαρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας Άρτας
Παρουσίαση ομάδας ECOMOBILITY Σχολείου Δεύτερης Ευκαιρίας Άρτας
 

Algorithms - Exercise 1

  • 1. Αλγόριθµοι & Πολυπλοκότητα 1ο Σύνολο Ασκήσεων Γιαννούσης Κωνσταντίνος (ΑΜ 1115201000225) Τµήµα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών copyright © 2011 by Constantine Yannoussis
  • 2. 1 Ποια είναι η ελάχιστη τιµή του n για την οποία ένας αλγόριθµος µε χρόνο εκτέλεσης 100n2 εκτελείται γρηγορότερα από έναν αλγόριθµο µε χρόνο εκτέ- λεσης 2n στην ίδια µηχανή ; Αυτό που Ϲητάµε ουσιαστικά είναι για ποια ελάχιστη τιµή του n ισχύει η ανισότητα 100n2 < 2n . Για να µπορέσουµε να ϐρούµε την ελάχιστη τιµή του n δουλεύουµε παίρ- νοντας την ισότητα 100n2 = 2n . Θέλουµε δηλαδή αρχικά να ϐρούµε για ποια τιµή οι δύο χρόνοι εκτέλεσης είναι ίσοι. Θεωρούµε λοιπόν τη συνάρτηση f (n) = 100n2 − 2n . Από την λύση της εξίσωσης f (n) = 0 ϐρίσκουµε τις ϱίζες δηλαδή τις τιµές όπου οι δυο χρόνοι είναι ίσοι. Κατόπιν ϑα ελέγξουµε τις πλησιέστερες ακέραιες τιµές στις ϱίζες για να ϐρούµε αυτές που να ικανοποιούν τη Ϲητούµενη ανίσωση. ΄Ετσι, µετά από υπολογισµούς καταλήγουµε σε τρεις ϱίζες της εξίσωσης 100n2 − 2n : n1 0.103658 n2 −0.096704 n3 14.3247 ΄Οπως ϕαίνεται, µεταξύ των ϱιζών n1 και n2 υπάρχει µοναδικός ακέραιος το 0 ο οποίος όµως δεν ανήκει στην f (n). Επίσης, για αρνητικές τιµές του n γίνεται άµεσα αντιληπτό πως δεν ικανοποιείται η Ϲητούµενη ανίσωση. ΄Ε- τσι καταφεύγουµε στην τρίτη ϱίζα, την n3 , και ελέγχουµε τις ακέραιες τιµές εκατέρωθεν της ϱίζας αυτής, δηλαδή, τις τιµές n = 14 και n = 15: • Για n = 14 έχουµε : 100 · 142 = 19600 214 = 16384 ∆ηλαδή, 100n2 > 2n . • Για n = 15 έχουµε : 100 · 152 = 22500 215 = 32768 ∆ηλαδή, ισχύει η Ϲητούµενη ανίσωση 100n2 < 2n . Αν συνεχίζαµε τον έλεγχο και για πιο µεγάλες τιµές του n ϑα παρατηρού- σαµε ότι ϑα εξακολουθούσε να ισχύει η ανίσωση. Συνεπώς, στο πρόβληµά µας, η µικρότερη ακέραια τιµή του n για την οποία ισχύει ότι ο χρόνος εκτέλεσης 100n2 εκτελείται γρηγορότερα από το χρόνο εκτέλεσης 2n στην ίδια µηχανή, είναι η n = 15. 1
  • 3. 2 Για κάθε συνάρτηση f (n) και χρόνο t στον παρακάτω πίνακα, ϐρείτε το µέ- γιστο µέγεθος n του στιγµιοτύπου ενός προβλήµατος που µπορεί να λυθεί σε χρόνο t, υποθέτοντας ότι ο αλγόριθµος που λύνει το πρόβληµα απαιτεί f (n) microseconds. f (n)t 1 δευτερόλεπτο 1 λεπτό 1 ώρα 6 7 9 log n 210 26·10 23.6·10 n 106 6 · 107 3.6 · 109 nlogn 62746.1 2.80142 · 106 √ 6.0482 · 107 n2 103 60 · 103 6 · 104 2n log 106 log(6 · 107 ) log(3.6 · 109 ) 3 ΄Εστω f, f1 , f2 , g, g1 , g2 , h ϑετικές συναρτήσεις. Αποφασίστε αν οι παρακάτω προτάσεις είναι αληθείς ή ψευδείς. ∆ικαιολογήστε τις απαντήσεις σας. 1. f (n) = Ω(g(n)) ⇒ g(n) = O(f (n)) Από τον ορισµό του Ω(g(n)) ισχύει ότι f (n) = Ω(g(n)) αν υπάρχουν ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| ≥ c|g(n)| για κάθε n > k . Οπότε αφού c > 0 τότε ϑα ισχύει και 1 |f (n)| ≥ |g(n)| για κάθε n > k . c Συνεπώς, αν ϑέσουµε c = 1 τότε ϑα ισχύει |g(n)| ≤ c |f (n)| για κάθε c n > k. ∆ηλαδή, σύµφωνα µε τον ορισµό του Big − O notation πρόταση f (n) = Ω(g(n)) ⇒ g(n) = O(f (n)) είναι αληθής. 2. n! = Θ(n log n) ΄Εστω ότι ισχύει n! = Θ(n log n). Εποµένως, n! = O(n log n), ΄Εστω συνάρτηση g(n) = 2n . Αποδεικνύεται ότι g(n) = O(n!) ( 2n = 2 · 2 · . . . 2 ≤ 2 · 3 · . . . n = n!) n times οπότε κατ΄ επέκταση ϑα ισχύει και 2n = O(n log n). Κάτι τέτοιο όµως είναι άτοπο, εποµένως η αρχική πρόταση δεν ισχύει. 3. f (n) = ω(g(n)) ⇒ f (n) = Ω(g(n)) Από τον ορισµό του ω(g(n)) ισχύει ότι f (n) = ω(g(n)) αν υπάρχουν ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| > c|g(n)| για κάθε n > k . Αφού λοιπόν έχουµε από τα δεδοµένα ότι αυτό ισχύει, δηλαδή ότι |f (n)| > c|g(n)| ϑα ισχύει και ότι για c , k ϑετικές σταθερές έχουµε |f (n)| ≥ c |g(n)| για κάθε n > k . Θα έχουµε δηλαδή ότι ισχύει f (n) = Ω(g(n)). 2
  • 4. 4. Αν f (n) = O(g(n)) και f (n) = Ω(h(n)) ⇒ g(n) = Θ(h(n)) Από τον ορισµό του Big-O notation έχουµε ότι f (n) = O(g(n)) ισχύει όταν υπάρχουν ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| ≤ c|g(n)| για κάθε n > k . Επίσης από τον ορισµό του Big-Ω notation έχουµε ότι f (n) = Ω(h(n)) ισχύει όταν υπάρχουν ϑετικές σταθερές c και k τέτοιες ώστε |f (n)| ≥ c |h(n)| για κάθε n > k . Για να ισχύει λοιπόν το g(n) = Θ(h(n)), ϑα πρέπει να δείξουµε ότι ισχύει g(n) = O(h(n)) και ταυτόχρονα g(n) = Ω(h(n)). Από τα δεδοµένα έχουµε ότι f (n) = O(g(n)), δηλαδή ότι και g(n) = Ω(f (n)) (ϐλέπε απόδειξη 1 ίδιας άσκησης). Επίσης από τα δεδοµένα έχουµε f (n) = Ω(h(n)). ΄Ετσι ϑα υπάρχουν c και k ϑετικά τέτοια ώστε να ισχύει και |g(n)| ≥ c|f (n)| ≥ c |h(n)| ⇒ |g(n)| ≥ c |h(n)|, δηλαδή, g(n) = Ω(h(n)). ΄Οµως ϕαίνεται ότι το αντίθετο δεν ισχύει, δηλαδή, δεν ισχύει ότι g(n) = O(h(n)). Θα προσπαθήσουµε να δείξουµε ότι δεν ισχύει µε ένα αντιπα- ϱάδειγµα. ΄Εστω, οι συναρτήσεις h(n) = log n, f (n) = n και g(n) = n log n. Εύκολα αποδεικνύουµε ότι οι συναρτήσεις είναι της µορφής που Ϲητάµε, δηλαδή ισχύει f (n) = Ω(h(n)) και f (n) = O(g(n)) που είναι και η αρχική συνθήκη και συνεπώς ισχύει και το συµπέρασµα ότι g(n) = Ω(h(n)) που δείξαµε πιο πάνω. ΄Εστω ότι ισχύει η συνθήκη ότι g(n) = O(h(n)), ότι δηλαδή, n log n = O(log n). Υπάρχουν λοιπόν ϑετικά l και m τέτοια ώστε |n log n| ≤ l| log n| για κάθε n > m. ΄Οταν n ≤ l η σχέση αυτή ϕαίνεται να ι- σχύει, αφού µιλάµε για ϑετικές ποσότητες. ΄Οταν όµως το n αυξάνει ενώ το l είναι µια σταθερή ποσότητα και κάποια στιγµή ϑα είναι n > l, οπότε η ανισότητα |n log n| ≤ l| log n| δεν ϑα ισχύει. ΄Ετσι µπορούµε να πούµε ότι τελικά η ανισότητα |n log n| ≤ l| log n| δεν ισχύει για κάθε n > k , και εποµένως δεν ισχύει η αρχική συνθήκη. Συνεπώς, η πρόταση δεν είναι αληθής. 5. 4n2 + 5n − 9 = Ω(10n2 ) Από τη ϑεωρία γνωρίζουµε ότι µια πολυωνυµική συνάρτηση έχει τάξη (Θ) τον όρο µε το µεγαλύτερο εκθέτη. Συνεπώς, η τάξη της f (n) = 4n2 + 5n − 9 = Θ(n2 ). Αυτό σηµαίνει επίσης ότι, f (n) = Ω(n2 ). Κατά τον ίδιο τρόπο g(n) = 10n2 = Θ(n2 ) και εποµένως g(n) = Ω(n2 ). Οπότε η πρόταση ισχύει. 3
  • 5. 6. log(n!) = Θ(n log n) Στο πρώτο ϐήµα της απόδειξης, ϑα δείξουµε ότι ισχύει log(n!) = O(n log n). n! = 1 · 2 . . . n − 1 · n ≤ n · n . . . n ⇒ n! ≤ nn Εποµένως log n! ≤ log nn ⇒ log n! ≤ n log n ΄Ετσι υπάρχουν ϑετικές ποσότητες c, k τέτοιες ώστε | log n!| ≤ c|n log n|, για κάθε n ≥ k , δηλαδή, ισχύει ότι log(n!) = O(n log n). Αφού αποδείξαµε το πρώτο µέρος, αποµένει να δείξουµε ότι ισχύει και log(n!) = Ω(n log n). ΄Ετσι, n n n n n nn2 n! ≥ · ( + 1) · ( + 2) · . . . ( + ) ≥ ⇒ 2 2 2 2 2 2 nn2 n n n! ≥ ⇒ log n! ≥ log ⇒ 2 2 2 n 1 1 n! ≥ (log n − log 2) = n log n − n 2 2 2 Εποµένως υπάρχουν ϑετικές ποσότητες c , k τέτοιες ώστε | log n!| ≥ c|n log n|, για κάθε n ≥ k , δηλαδή, ισχύει ότι log(n!) = Ω(n log n). Συνεπώς η πρόταση είναι αληθής. 7. f (n) + g(n) = Θ(min(g(n), f (n))) Γνωρίζουµε ότι ισχύει το f (n) = Θ(f (n)) και g(n) = Θ(g(n)). Επίσης ισχύει ότι f (n) + g(n) = Ω(min(g(n), f (n))). Συνεπώς για να ισχύει η πρόταση ϑα πρέπει να ισχύει ότι f (n) + g(n) = O(min(g(n), f (n))). ΄Εστω ότι f (n) + g(n) = O(min(g(n), f (n))) ισχύει. Οπότε έστω οι συναρτήσεις f (n) = n και g(n) = 2n . Συνεπώς min(f (n), g(n)) = f (n) = n. ΄Αρα από την αρχική υπόθεση ϑα είναι n + 2n = O(n). Κάτι τέτοιο δεν ισχύει οπότε και η πρόταση f (n)+g(n) = O(min(g(n), f (n))) δεν ισχύει. Συνεπώς, και η αρχική πρόταση δεν ισχύει. √ √ 8. n + 2 n = Ω(n n) Από το ϑεώρηµα ισχύει ότι f (n) + g(n) = Ω(min(g(n), f (n))). Επίσης, √ √ αν f (n) = n και g(n) = 2 n, τότε, min(f (n), g(n)) = 2 n = g(n), για κάθε n > 4. √ Οπότε αρκεί να δείξουµε ότι η g(n) = Ω(n n). ΄Εστω ότι ισχύει g(n) = √ Ω(n n). ∆ηλαδή υπάρχουν ϑετικές ποσότητες c, k τέτοιες ώστε |g(n)| ≥ √ c|n n|, για κάθε n > k . ΄Εχουµε δηλαδή, √ √ √ |g(n)| ≥ c|n n| ⇒ |2 n| ≥ c|n n| ⇒ 4
  • 6. c √ √ √ | n| ≥ |n n| ⇒ | n| ≥ c |n n| 2 Κάτι τέτοιο είναι άτοπο για ϑετικές ποσότητες οπότε ισχύει η πρόταση √ g(n) = Ω(n n) και συνεπώς ισχύει η αρχική πρόταση. 9. Αν f (n) = O(g(n)) και g(n) = Ω(f (n)) ⇒ f (n) = Θ(g(n)) Για να ισχύει η πρόταση αυτή ϑα έπρεπε να ισχύει f (n) = O(g(n)) και g(n) = O(f (n)). ΄Οµως επειδή δεν γνωρίζουµε αν g(n) = O(f (n)), αλλά µόνο ότι g(n) = Ω(f (n)) τότε η πρόταση δεν ισχύει. Αν η πρόταση µας έλεγε ότι ισχύει f (n) = O(g(n)) και g(n) = Θ(f (n)) τότε η πρόταση ϑα ήταν αληθής. 4 Χωρίστε τη λίστα των συναρτήσεων σε κλάσεις, τέτοιες ώστε οι f (n) και g(n) να ανήκουν στην ίδια κλάση αν και µόνο αν f (n) = Θ(g(n)). Στη συνέχεια επιλέξτε έναν εκπρόσωπο από κάθε κλάση και κατατάξτε τους κατά αύξουσα σειρά πολυπλοκότητας n n2 −n n • = ... = 2 οπότε = Θ(n2 ) 2 2 • n log n = Θ(n log n) n 1 • k=1 k = log n + c = Θ(log n) • 8n2 = Θ(n2 ) √ 1 • log log n = log(log n)1/2 = 2 log log n = Θ(log log n) • n! = Θ(n!) • log log n = Θ(log log n) • nlog n = Θ(nlog n ) • log n! = Θ(n log n) 2 • 4log n = 22 log n = 2log n = n2 = Θ(n2 ) n n • k=0 = 2n = Θ(2n ) k 2 • 2log n = 2log n log n = nlog n = Θ(nlog n ) • 10100 = Θ(10100 ) • 2n = Θ(2n ) 5
  • 7. • log n = Θ(log n) √ 1/2 √ √ • ( 2)log n = 21/2 log n = 2log n = n1/2 = n = Θ( n) • (n − 1)! = Θ((n − 1)!) • log nn = n log n = Θ(n log n) • 5800 = Θ(5800 ) √ √ • 5 n = Θ( n) Οπότε κατηγοριοποιώντας έχουµε : n • = 8n2 = 4log n = Θ(n2 ) 2 • n log n = log n! = log nn = Θ(n log n) √ • log log n = log log n = Θ(log log n) 2 • nlog n = 2log n = Θ(nlog n ) √ √ √ • ( 2)log n = 5 n = Θ( n) n n • k=0 = 2n = Θ(2n ) k • 5800 = 10100 = Θ(1) • (n − 1)! = Θ((n − 1)!) • n! = Θ(n!) n 1 • log n = k=1 k = Θ(log n) Αν επιλέξουµε έναν αντιπρόσωπο από κάθε κλάση µπορούµε να ταξινοµή- σουµε τις κλάσεις ως εξής : √ 10100 , log log n, log n, 5 n, n log n, 8n2 , nlog n , 2n , (n − 1)!, n! 5 Για κάθε Ϲεύγος εκφράσεων (A, B) του παρακάτω πίνακα αποφασίστε αν το Α είναι Ο, ο, Ω, ω ή Θ του Β. Υποθέστε ότι οι k ≥ 1, > 0 και c > 1 είναι σταθερές. Απαντήστε σηµειώνοντας ένα `ναι΄ ή ένα `όχι΄ σε κάθε ϑέση του πίνακα. 6
  • 8. Α Β Ο ο Ω ω Θ a. logk n n ναι ναι b. nk cn ναι ναι c. 2n 2n/2 ναι ναι d. nlog c clog n ναι ναι ναι A Παίρνουµε το όριο limn→∞ B . ΄Ετσι έχουµε, a. logk n ∞ k logk−1 n · 1 n lim = ∞ lim = n→∞ n n→∞ n −1 k logk−1 n k! lim = . . . = lim k n→∞ n n→∞ n Οπότε, k! 1 lim = =0 n→∞ k n ∞ Εποµένως, logk n = o(n ) ⇒ logk n = O(n ). b. nk ∞ knk−1 ∞ lim = ∞ lim n =∞ n→∞ cn n→∞ c · ln c k! 1 . . . = lim = =0 n→∞ cn · lnk c ∞ Εποµένως, nk = o(cn ) ⇒ nk = O(cn ). c. 2n 2n/2+n/2 2n/2 2n/2 lim = lim = lim = n→∞ 2n/2 n→∞ 2n/2 n→∞ 2n/2 lim 2n/2 = ∞ n→∞ Εποµένως, 2n = ω(2n/2 ) ⇒ 2n = Ω(2n/2 ). d. nlog c lim n→∞ clog n ΄Οµως γνωρίζουµε ότι nlog c = clog n , συνεπώς nlog c lim =1 n→∞ clog n Εποµένως, nlog c = Θ(clog n ). 7
  • 9. 6 Ποια είναι η πολυπλοκότητα των παρακάτω τµηµάτων προγράµµατος ; Αλγόριθµος 1 n n n n 2 n2 4 2 n2 4 Θ(1) = Θ(1) 1 i=1 j=1 k=1 i=1 j=1 k=1 οπότε, n 2 n n4 Θ(1) · · n · = Θ(1) 4 2 8 Εποµένως ο αλγόριθµος είναι τάξης Θ(n4 ). Αλγόριθµος 2 n−1 2i j n−1 2i j ( ( Θ(1))) = Θ(1) ( ( 1)) i=1 j=1 k=1 i=1 j=1 k=1 ΄Ετσι υπολογίζουµε : j (1+1)j k=1 1 = 2 =j 2i (1+ni)ni 2 2 j=1 j = 2 = ni+n i 2 2 n−1 ni+n2 i2 i=1 2 = i=1 ( ni + (ni) ) = n−1 2 2 n−1 ni n−1 (ni)2 i=1 ( 2 + i=1 2 = n n−1 n2 n−1 2 2 i=1 i + 2 i=1 i = n (1+(n−1))(n−1) 2 2 2 + n (n−1)((n−1)+1)(2(n−1)+1) 2 6 = n (n2 −n) n2 n(n−1)(2n−1) 2 2 + 2 6 = n3 −n n3 (n−1)(2n−1) 4 + 12 Οπότε τελικά, ο αλγόριθµος προκύπτει ότι είναι τάξης Θ(n5 ). 7 Να υπολογίσετε τον χρόνο εκτέλεσης µέσης περίπτωσης του αλγορίθµου 3, δε- δοµένου ότι γνωρίζουµε πως το στοιχείο που ψάχνουµε (το k ) ϐρίσκεται στην τελευταία ϑέση µε πιθανότητα 1/4, στην προτελευταία ϑέση µε πιθανότητα 1/4, ενώ η πιθανότητα να ϐρίσκεται σε οποιαδήποτε από τις υπόλοιπες n − 2 1 ϑέσεις είναι ίση µε 4(n−2) , n ≥ 3. Αν ϑεωρήσουµε ως Dn το σύνολο των διαφορετικών εισόδων στο πρόβληµα και d ∈ D µια είσοδό του τότε : 8
  • 10. • Πολυπλοκότητα στην ϐέλτιστη περίπτωση (Best Case Scenario): Cbcs (n) = min{κόστος(d), d ∈ Dn } Αν το k είναι το πρώτο στοιχείο της ακολουθίας, τότε ϑα κάνει 2 συγκρί- σεις (από τον έλεγχο της WHILE) και µια καταχώρηση (i = 0). Αν το k είναι το δεύτερο στοιχείο της ακολουθίας, τότε ϑα κάνει 4 συγκρίσεις και 2 καταχωρήσεις και γενικά αν είναι το i−οστό στοιχείο ϑα κάνει 2i συγκρίσεις και i καταχωρήσεις. • Πολυπλοκότητα στην χείριστη περίπτωση(Worst Case Scenario): Cwcs (n) = max{κόστος(d), d ∈ Dn } Στη χειρότερη περίπτωση που το k δεν ανήκει στην ακολουθία, τότε ο αλγόριθµος ϑα εκτελέσει 2n + 2 συγκρίσεις (στην τελευταία επανάληψη υποθέτουµε ότι ϑα κάνει και τις δύο συγκρίσεις) και n+1 καταχωρήσεις. Η πιθανότητα να µην ϐρίσκεται το k στην ακολουθία είναι 1 2 n−2 p = 1 − p ⇒ p = 1 − ((n − 2) + )= 4(n − 2) 4 4(n − 2) • Πολυπλοκότητα κατά µέσο όρο : Cµo (n) = d∈Dn p(d)κόστος(d) Η κατά µέσο όρο πολυπλοκότητα, είναι πόσες πράξεις κάνει (ή πόση µνήµη δεσµεύει) ο αλγόριθµος κατά µέσο όρο. ΄Ετσι µετράµε τις πράξεις (κόστος(d)) που κάνει ο αλγόριθµος για κάθε δυνατή είσοδο d ∈ Dn που δίνεται µε πιθανότητα p(d). ΄Ετσι έχουµε πολυπλοκότητα κατά µέσο όρο (για συγκρίσεις): 1 1 Cµo (n) = 2+ 4 + ... 4(n − 2) 4(n − 2) 1 1 n−2 + 2(n − 1) + 2n + 2(n + 1) 4 4 4(n − 2) ΄Ετσι, n−2 1 6n − 1 Cµo (n) = 2i + 4(n − 2) 4 i=0 9