SlideShare a Scribd company logo
1 of 43
Algoritmalar
                               DERS 2
                               Asimptotik Notasyon
                               •O-, Ω-, ve Θ-notasyonları
                               Yinelemeler
                               •Yerine koyma metodu
                               •Yineleme döngüleri
                               •Özyineleme ağacı
                               •Ana Metot (Master metod)

September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.1
Asimptotik notasyon
 O-notasyonu (üst sınırlar):
        Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise
        0 ≤ f(n) ≤ cg(n) durumunda

        f(n) = O(g(n)) yazabiliriz.




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.2
Asimptotik notasyon
 O-notasyonu (üst sınırlar):
        Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise
        0 ≤ f(n) ≤ cg(n) durumunda

        f(n) = O(g(n)) yazabiliriz.


ÖRNEK: 2n2 = O(n3)                                        (c = 1, n0 = 2)


September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.3
Asimptotik notasyon
 O-notasyonu (üst sınırlar):
        Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise
        0 ≤ f(n) ≤ cg(n) durumunda

        f(n) = O(g(n)) yazabiliriz.


ÖRNEK: 2n2 = O(n3)                                        (c = 1, n0 = 2)

           fonksiyonlar,
           değerler değil
September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.4
Asimptotik notasyon
 O-notasyonu (üst sınırlar):
        Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise
        0 ≤ f(n) ≤ cg(n) durumunda

        f(n) = O(g(n)) yazabiliriz.


ÖRNEK: 2n2 = O(n3)                                        (c = 1, n0 = 2)
                                                          komik, “tek yönlü”
           fonksiyonlar,                                  eşitlik
           değerler değil
September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.5
O-notasyonunun tanımı
    O(g(n))= { f(n) : tüm n ≥ n0 değerlerinde
                      c > 0, n0 > 0 ise ve
                      0 ≤ f(n) ≤ cg(n) }




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.6
O-notasyonunun tanımı
    O(g(n))= { f(n) : tüm n ≥ n0 değerlerinde
                      c > 0, n0 > 0 ise ve
                      0 ≤ f(n) ≤ cg(n) }



    ÖRNEK: 2n2 ∈ O(n3)


September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.7
Ω-notasyonu (alt sınırlar)
O-notasyonu bir üst-sınır notasyonudur.
f(n) en az O(n2)'dir demenin bir anlamı yoktur.




September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.8
Ω-notasyonu (alt sınırlar)
O-notasyonu bir üst-sınır notasyonudur.
f(n) en az O(n2)'dir demenin bir anlamı yoktur.

    Ω(g(n))= { f(n) : tüm n ≥ n0 değerlerinde
                      c > 0, n0 > 0 ise ve
                      0 ≤ cg(n) ≤ f(n) }




September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.9
Ω-notasyonu (alt sınırlar)
O-notasyonu bir üst-sınır notasyonudur.
f(n) en az O(n2)'dir demenin bir anlamı yoktur.

    Ω(g(n))= { f(n) : tüm n ≥ n0 değerlerinde
                      c > 0, n0 > 0 ise ve
                      0 ≤ cg(n) ≤ f(n) }


 ÖRNEK:                n = Ω (lg n)                        (c = 1, n0 = 16)
September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.10
Θ-notasyonu(sıkı sınırlar)

             Θ(g(n)) = O(g(n)) ∩ Ω(g(n))




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.11
Θ-notasyonu(sıkı sınırlar)

             Θ(g(n)) = O(g(n)) ∩ Ω(g(n))


   ÖRNEK:                   1
                            2
                              n2 − 2n = Θ(n2 )




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.12
Θ, Ω ve O notasyonlarının
           grafik üzerinde örneklenmesi




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.13
ο ve ω notasyonları
O-notasyonu ve Ω-notasyonu ≤ ve ≥ gibidir.
o-notasyonu ve ω-notasyonu < ve > gibidir..

      o(g(n))= { f(n) : tüm n ≥ n0 değerlerinde
                         c > 0 sabiti için n0 sabiti varsa
                         0 ≤ f(n) ≤ cg(n) }


  ÖRNEK:                    2n2 = o(n3)                     (n0 = 2/c)
  September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.14
ο ve ω notasyonları
O-notasyonu ve Ω-notasyonu ≤ ve ≥ gibidir.
o-notasyonu ve ω-notasyonu < ve > gibidir..

      o(g(n))= { f(n) : tüm n ≥ n0 değerlerinde
                         c > 0 sabiti için n0 sabiti varsa
                         0 ≤ f(n) ≤ cg(n) }


  ÖRNEK:                     n = ω(lg n)                    (n0 = 1+1/c)
  September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.15
Yinelemelerin çözümü
  • Ders 1' deki birleştirme sıralaması analizi bir
    yinelemeyi çözmemizi gerektirmişti.
  • Yinelemeler integral, türev, v.s.
  denklemlerinin çözümlerine benzer.
  • Ders 3: Yinelemelerin "böl-ve-fethet"
  algoritmalarına uygulanması.




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.16
Yerine koyma metodu (yöntemi)
  En genel yöntem:
  1.Çözümün şeklini tahmin edin.
  2.Tümevarım ile doğrulayın.
  3.Sabitleri çözün.




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.17
Yerine koyma metodu (yöntemi)
  En genel yöntem:
  1.Çözümün şeklini tahmin edin.
  2.Tümevarım ile doğrulayın.
  3.Sabitleri çözün.
  ÖRNEK:        T(n) = 4T(n/2) + n
  1. T(1) = Θ(1) olduğunu varsayın.
  2. O(n3)'ü tahmin edin. (O ve Ω ayrı ayrı kanıtlayın.)
  3. k< n için T(k) ≤ ck3 olduğunu varsayın.
  • T(n) ≤ cn3'ü tümevarımla kanıtlayın.
September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.18
Yerine koyma örneği
T (n) = 4T (n / 2) + n
      ≤ 4c(n / 2)3 + n
      = (c / 2)n3 + n
      = cn3 − ((c / 2)n3 − n)       istenen –kalan
      ≤ cn3        istenen
(c/2)n3 – n ≥ 0 olduğu zamanlarda, örneğin,
                   eğer c ≥ 2 ve n ≥ 1 ise.
                      kalan
September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.19
Örnek (devamı)
 • Başlangıç koşullarını da ele almalı,yani,
   tümevarımı taban şıklarına (base cases)
   dayandırmalıyız.
 •Taban: T(n) = Θ(1) tüm n < n0 için, ki n0
   uygun bir sabittir.
 •1 ≤ n < n0 için, elimizde “Θ(1)” ≤ cn3, olur;
   yeterince büyük bir c değeri seçersek.



September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.20
Örnek (devamı)
 • Başlangıç koşullarını da ele almalı,yani,
   tümevarımı taban şıklarına (base cases)
   dayandırmalıyız.
 •Taban: T(n) = Θ(1) tüm n < n0 için, ki n0
   uygun bir sabittir.
 •1 ≤ n < n0 için, elimizde “Θ(1)” ≤ cn3, olur;
   yeterince büyük bir c değeri seçersek.

                     Bu, sıkı bir sınır değildir !
September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.21
Daha sıkı bir üst sınır?
T(n) = O(n2) olup olmadığını kanıtlayacağız.




September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.22
Daha sıkı bir üst sınır?
T(n) = O(n2) olduğunu kanıtlayacağız.
Varsayın ki k < n için T(k) ≤ ck2 olsun:
         T (n) = 4T (n / 2) + n
               ≤ 4c(n / 2)2 + n
               = cn2 + n
               = cn2 – (– n ) [ istenen –kalan ]
               ≤ cn2


September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.23
Daha sıkı bir üst sınır?
T(n) = O(n2) olduğunu kanıtlayacağız. Varsayın
ki k < n için T(k) ≤ ck2 olsun:
               T (n) = 4T (n / 2) + n
                 ≤ 4c(n / 2)2 + n
                 = cn2 + n
                 = cn2 – (– n )
                 ≤ cn2        Yanlış
c > 0 için eşitsizlik doğru değildir. Kaybettik.
September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.24
Özyineleme-ağacı metodu
• Özyineleme-ağacı, bir algoritmadaki özyineleme
  uygulamasının maliyetini (zamanı) modeller.
• Özyineleme-ağacı metodu, bazen güvenilir
  olmayabilir.
• Öte yandan özyineleme-ağacı metodu "öngörü"
  olgusunu geliştirir.
• Özyineleme-ağacı metodu "yerine koyma
  metodu" için gerekli tahminlemelerde yararlıdır .

September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.25
Özyineleme-ağacı örneği
T(n) = T(n/4) + T(n/2) + n2: çözün




 September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.26
Özyineleme-ağacı örneği
                T(n) = T(n/4) + T(n/2) + n2: çözün
                T(n)




September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.27
Özyineleme-ağacı örneği
    T(n) = T(n/4) + T(n/2) + n2: çözün
                                    n2

           T(n/4)                                 T(n/2)




September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.28
Özyineleme-ağacı örneği
   T(n) = T(n/4) + T(n/2) + n2: çözün
                                   n2

            (n/4)2                                 (n/2)2

T(n/16)              T(n/8)             T(n/8)               T(n/4)




September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.29
Özyineleme-ağacı örneği
        T(n) = T(n/4) + T(n/2) + n2:
                                 n2

            (n/4)2                                 (n/2)2

(n/16)2              (n/8)2             (n/8)2               (n/4)2
…




Θ(1)

September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.30
Özyineleme-ağacı örneği
    T(n) = T(n/4) + T(n/2) + n2:
                                  n2                                         n2
            (n/4)2                                 (n/2)2

(n/16)2              (n/8)2             (n/8)2               (n/4)2
…




Θ(1)

September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.31
Özyineleme-ağacı örneği
   T(n) = T(n/4) + T(n/2) + n2:
                                  n2                                          n2
            (n/4)2                                 (n/2)2                  5 n2
                                                                          16
(n/16)2              (n/8)2             (n/8)2               (n/4)2
…




Θ(1)

September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.    L2.32
Özyineleme-ağacı örneği
    T(n) = T(n/4) + T(n/2) + n2:
                                  n2                                           n2
            (n/4)2                                 (n/2)2                   5 n2
                                                                           16
(n/16)2              (n/8)2             (n/8)2               (n/4)2       25 n 2
                                                                          256
…




Θ(1)

September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.     L2.33
Özyineleme-ağacı örneği
   T(n) = T(n/4) + T(n/2) + n2:
                                  n2                                         n2
            (n/4)2                                 (n/2)2                   5 n2
                                                                           16
(n/16)2              (n/8)2             (n/8)2               (n/4)2       25 n 2
                                                                          256
…




Θ(1)                   Toplam


September 12, 2005    Copyright © 2001-5 Erik D. Demaine and Charles E.
Ana Metod (The Master Method)

Ana method aşağıda belirtilen yapıdaki
yinelemelere uygulanır:
             T(n) = a T(n/b) + f (n) ,
burada a ≥ 1, b > 1, ve f asimptotik olarak
pozitiftir.



September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.35
Üç yaygın uygulama
f (n)'i nlogba ile karşılaştırın:
1. f (n) = O(nlogba – ε) ε > 0 sabiti durumunda
   • f (n) polinomsal olarak nlogba
   göre daha yavaş büyür (nε faktörü oranında).
   ÇÖZÜM: T(n) = Θ(nlogba) .




 September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.36
Üç yaygın uygulama
f (n)'i nlogba ile karşılaştırın:
1.f (n) = O(nlogba – ε) ε > 0 sabiti durumunda;
   • f (n) polinomsal olarak nlogba
göre daha yavaş büyür(nε faktörü oranında).
Çözüm: T(n) = Θ(nlogba) .
•f (n) = Θ(nlogba lgkn) k ≥ 0 sabiti durumunda;
   • f (n) ve nlogba benzer oranlarda
   Çözüm: T(n) =büyürler. k+1n) .
                      Θ(nlogba lg
September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.37
Üç yaygın uygulama
f (n)'i nlogba ile karşılaştırın:
3.f (n) = Ω(nlogba + ε)ε > 0 sabiti durumunda;
    • f (n) polinomsal olarak nlogba 'ye göre daha
      hızlı büyür ( nε faktörü oranında),
ve f (n), düzenlilik koşulunu af (n/b) ≤ cf (n)
durumunda, c < 1 olmak kaydıyla karşılar.
Çözüm: T(n) = Θ(f (n)) .


 September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.38
Örnekler

Örnek. T(n) = 4T(n/2) + n
a = 4, b = 2 ⇒ nlogba = n2; f (n) = n.
Durum 1: f (n) = O(n2 – ε) ε = 1 için.
∴ T(n) = Θ(n2).




 September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.39
Örnekler

Ör. T(n) = 4T(n/2) + n
a = 4, b = 2 ⇒ nlogba = n2; f (n) = n.
Durum 1: f (n) = O(n2 – ε) ε = 1 için.
∴ T(n) = Θ(n2).

Ör. T(n) = 4T(n/2) + n2
a = 4, b = 2 ⇒ nlogba = n2; f (n) = n2.
Durum 2: f (n) = Θ(n2lg0n), yani, k = 0.
∴ T(n) = Θ(n2lg n).

 September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.40
Örnekler
Ör. T(n) = 4T(n/2) + n3
a = 4, b = 2 ⇒ nlogba = n2; f (n) = n3.
    DURUM 3: f (n) = Ω(n2 + ε)       ε = 1için
    ve 4(n/2)3 ≤ cn3 (düz. koş.) c = 1/2 için.
   ∴ T(n) = Θ(n3).




 September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.41
Örnekler
Ör. T(n) = 4T(n/2) + n3
a = 4, b = 2 ⇒ nlogba = n2; f (n) = n3.
    DURUM 3: f (n) = Ω(n2 + ε)       ε = 1için
    ve 4(n/2)3 ≤ cn3 (düz. koş.) c = 1/2 için.
   ∴ T(n) = Θ(n3).
Ör. T(n) = 4T(n/2) + n2/lg n
a = 4, b = 2 ⇒ nlogba = n2; f (n) = n2/lg n.
Ana metod geçerli değil. Özellikle,
ε > 0 olan sabitler için nε = ω(lg n) elde edilir.
  September 12, 2005   Copyright © 2001-5 Erik D. Demaine and Charles E.   L2.42
Appendix/EK: Geometrik seriler

                                                               n+1
                                             1−x                        ; x ≠ 1 için
1 + x + x + ... + x =2                 n
                                                       1−x
                                               1
   1 + x + x + ... =     2                                     ; |x| < 1 için
                                              1−x




September 12, 2005       Copyright © 2001-5 Erik D. Demaine and Charles E.        L2.43

More Related Content

Viewers also liked

Why o2 o startups are never dead in south east asia
Why o2 o startups are never dead in south east asia Why o2 o startups are never dead in south east asia
Why o2 o startups are never dead in south east asia eTailing India
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptBatın Düz
 
Ερευνητική Εργασία Τάξης Α'
Ερευνητική Εργασία Τάξης Α'Ερευνητική Εργασία Τάξης Α'
Ερευνητική Εργασία Τάξης Α'babis1977_v
 
Navin Mistry-eBay, eTailing India Jaipur Conclave
Navin Mistry-eBay, eTailing India Jaipur ConclaveNavin Mistry-eBay, eTailing India Jaipur Conclave
Navin Mistry-eBay, eTailing India Jaipur ConclaveeTailing India
 
Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...
Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...
Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...eTailing India
 
eTailing India Jaipur Conclave- 2013- Ashish Jhalani
eTailing India Jaipur Conclave- 2013- Ashish JhalanieTailing India Jaipur Conclave- 2013- Ashish Jhalani
eTailing India Jaipur Conclave- 2013- Ashish JhalanieTailing India
 
Ola, Meru Seeks Govt. Intervention to Fight MNCs
Ola, Meru Seeks Govt. Intervention to Fight MNCsOla, Meru Seeks Govt. Intervention to Fight MNCs
Ola, Meru Seeks Govt. Intervention to Fight MNCseTailing India
 
Exploring SharePoint 2013 and Improving your Business Applications
Exploring SharePoint 2013 and Improving your Business ApplicationsExploring SharePoint 2013 and Improving your Business Applications
Exploring SharePoint 2013 and Improving your Business ApplicationsSociusPartner
 
Media target audience
Media target audienceMedia target audience
Media target audiencerubygibson95
 
Qlda 7-thaydoivaketthuc[easyvn.net]
Qlda 7-thaydoivaketthuc[easyvn.net]Qlda 7-thaydoivaketthuc[easyvn.net]
Qlda 7-thaydoivaketthuc[easyvn.net]huongntt16
 
Colindres. Lucía Arias
Colindres. Lucía AriasColindres. Lucía Arias
Colindres. Lucía Ariasjolaedi
 
Boost My Sale Workshop
Boost My Sale WorkshopBoost My Sale Workshop
Boost My Sale WorkshopeTailing India
 

Viewers also liked (17)

dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
Why o2 o startups are never dead in south east asia
Why o2 o startups are never dead in south east asia Why o2 o startups are never dead in south east asia
Why o2 o startups are never dead in south east asia
 
Corporate profile copy
Corporate profile   copyCorporate profile   copy
Corporate profile copy
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
 
Ερευνητική Εργασία Τάξης Α'
Ερευνητική Εργασία Τάξης Α'Ερευνητική Εργασία Τάξης Α'
Ερευνητική Εργασία Τάξης Α'
 
Navin Mistry-eBay, eTailing India Jaipur Conclave
Navin Mistry-eBay, eTailing India Jaipur ConclaveNavin Mistry-eBay, eTailing India Jaipur Conclave
Navin Mistry-eBay, eTailing India Jaipur Conclave
 
Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...
Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...
Module 2 customer behaviour ratan kk_masterclass on online marketing,– Ratan ...
 
eTailing India Jaipur Conclave- 2013- Ashish Jhalani
eTailing India Jaipur Conclave- 2013- Ashish JhalanieTailing India Jaipur Conclave- 2013- Ashish Jhalani
eTailing India Jaipur Conclave- 2013- Ashish Jhalani
 
Ola, Meru Seeks Govt. Intervention to Fight MNCs
Ola, Meru Seeks Govt. Intervention to Fight MNCsOla, Meru Seeks Govt. Intervention to Fight MNCs
Ola, Meru Seeks Govt. Intervention to Fight MNCs
 
Exploring SharePoint 2013 and Improving your Business Applications
Exploring SharePoint 2013 and Improving your Business ApplicationsExploring SharePoint 2013 and Improving your Business Applications
Exploring SharePoint 2013 and Improving your Business Applications
 
Media target audience
Media target audienceMedia target audience
Media target audience
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 
Qlda 7-thaydoivaketthuc[easyvn.net]
Qlda 7-thaydoivaketthuc[easyvn.net]Qlda 7-thaydoivaketthuc[easyvn.net]
Qlda 7-thaydoivaketthuc[easyvn.net]
 
Colindres. Lucía Arias
Colindres. Lucía AriasColindres. Lucía Arias
Colindres. Lucía Arias
 
Mt. Moriah
Mt. Moriah Mt. Moriah
Mt. Moriah
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 
Boost My Sale Workshop
Boost My Sale WorkshopBoost My Sale Workshop
Boost My Sale Workshop
 

More from Batın Düz

dene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfdene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfBatın Düz
 
dene/tiviace_english.pdf
dene/tiviace_english.pdfdene/tiviace_english.pdf
dene/tiviace_english.pdfBatın Düz
 
dene/tiviace_english.pptx
dene/tiviace_english.pptxdene/tiviace_english.pptx
dene/tiviace_english.pptxBatın Düz
 
dene/tiviace_english.pptx
dene/tiviace_english.pptxdene/tiviace_english.pptx
dene/tiviace_english.pptxBatın Düz
 
dene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfdene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfBatın Düz
 
dene/TIVIACE_turkce03.ppt
dene/TIVIACE_turkce03.pptdene/TIVIACE_turkce03.ppt
dene/TIVIACE_turkce03.pptBatın Düz
 
dene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptxdene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptxBatın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptBatın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptBatın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptBatın Düz
 

More from Batın Düz (20)

dene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfdene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdf
 
dene/tiviace_english.pdf
dene/tiviace_english.pdfdene/tiviace_english.pdf
dene/tiviace_english.pdf
 
dene/tiviace_english.pptx
dene/tiviace_english.pptxdene/tiviace_english.pptx
dene/tiviace_english.pptx
 
dene/tiviace_english.pptx
dene/tiviace_english.pptxdene/tiviace_english.pptx
dene/tiviace_english.pptx
 
dene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfdene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdf
 
dene/TIVIACE_turkce03.ppt
dene/TIVIACE_turkce03.pptdene/TIVIACE_turkce03.ppt
dene/TIVIACE_turkce03.ppt
 
dene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptxdene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptx
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 
dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 
dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 
dene/ders1.ppt
dene/ders1.pptdene/ders1.ppt
dene/ders1.ppt
 

dene/ders2.ppt

  • 1. Algoritmalar DERS 2 Asimptotik Notasyon •O-, Ω-, ve Θ-notasyonları Yinelemeler •Yerine koyma metodu •Yineleme döngüleri •Özyineleme ağacı •Ana Metot (Master metod) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.1
  • 2. Asimptotik notasyon O-notasyonu (üst sınırlar): Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise 0 ≤ f(n) ≤ cg(n) durumunda f(n) = O(g(n)) yazabiliriz. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.2
  • 3. Asimptotik notasyon O-notasyonu (üst sınırlar): Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise 0 ≤ f(n) ≤ cg(n) durumunda f(n) = O(g(n)) yazabiliriz. ÖRNEK: 2n2 = O(n3) (c = 1, n0 = 2) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.3
  • 4. Asimptotik notasyon O-notasyonu (üst sınırlar): Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise 0 ≤ f(n) ≤ cg(n) durumunda f(n) = O(g(n)) yazabiliriz. ÖRNEK: 2n2 = O(n3) (c = 1, n0 = 2) fonksiyonlar, değerler değil September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.4
  • 5. Asimptotik notasyon O-notasyonu (üst sınırlar): Tüm n ≥ n0 değerleri için sabitler c > 0, n0 > 0 ise 0 ≤ f(n) ≤ cg(n) durumunda f(n) = O(g(n)) yazabiliriz. ÖRNEK: 2n2 = O(n3) (c = 1, n0 = 2) komik, “tek yönlü” fonksiyonlar, eşitlik değerler değil September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.5
  • 6. O-notasyonunun tanımı O(g(n))= { f(n) : tüm n ≥ n0 değerlerinde c > 0, n0 > 0 ise ve 0 ≤ f(n) ≤ cg(n) } September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.6
  • 7. O-notasyonunun tanımı O(g(n))= { f(n) : tüm n ≥ n0 değerlerinde c > 0, n0 > 0 ise ve 0 ≤ f(n) ≤ cg(n) } ÖRNEK: 2n2 ∈ O(n3) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.7
  • 8. Ω-notasyonu (alt sınırlar) O-notasyonu bir üst-sınır notasyonudur. f(n) en az O(n2)'dir demenin bir anlamı yoktur. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.8
  • 9. Ω-notasyonu (alt sınırlar) O-notasyonu bir üst-sınır notasyonudur. f(n) en az O(n2)'dir demenin bir anlamı yoktur. Ω(g(n))= { f(n) : tüm n ≥ n0 değerlerinde c > 0, n0 > 0 ise ve 0 ≤ cg(n) ≤ f(n) } September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.9
  • 10. Ω-notasyonu (alt sınırlar) O-notasyonu bir üst-sınır notasyonudur. f(n) en az O(n2)'dir demenin bir anlamı yoktur. Ω(g(n))= { f(n) : tüm n ≥ n0 değerlerinde c > 0, n0 > 0 ise ve 0 ≤ cg(n) ≤ f(n) } ÖRNEK: n = Ω (lg n) (c = 1, n0 = 16) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.10
  • 11. Θ-notasyonu(sıkı sınırlar) Θ(g(n)) = O(g(n)) ∩ Ω(g(n)) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.11
  • 12. Θ-notasyonu(sıkı sınırlar) Θ(g(n)) = O(g(n)) ∩ Ω(g(n)) ÖRNEK: 1 2 n2 − 2n = Θ(n2 ) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.12
  • 13. Θ, Ω ve O notasyonlarının grafik üzerinde örneklenmesi September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.13
  • 14. ο ve ω notasyonları O-notasyonu ve Ω-notasyonu ≤ ve ≥ gibidir. o-notasyonu ve ω-notasyonu < ve > gibidir.. o(g(n))= { f(n) : tüm n ≥ n0 değerlerinde c > 0 sabiti için n0 sabiti varsa 0 ≤ f(n) ≤ cg(n) } ÖRNEK: 2n2 = o(n3) (n0 = 2/c) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.14
  • 15. ο ve ω notasyonları O-notasyonu ve Ω-notasyonu ≤ ve ≥ gibidir. o-notasyonu ve ω-notasyonu < ve > gibidir.. o(g(n))= { f(n) : tüm n ≥ n0 değerlerinde c > 0 sabiti için n0 sabiti varsa 0 ≤ f(n) ≤ cg(n) } ÖRNEK: n = ω(lg n) (n0 = 1+1/c) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.15
  • 16. Yinelemelerin çözümü • Ders 1' deki birleştirme sıralaması analizi bir yinelemeyi çözmemizi gerektirmişti. • Yinelemeler integral, türev, v.s. denklemlerinin çözümlerine benzer. • Ders 3: Yinelemelerin "böl-ve-fethet" algoritmalarına uygulanması. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.16
  • 17. Yerine koyma metodu (yöntemi) En genel yöntem: 1.Çözümün şeklini tahmin edin. 2.Tümevarım ile doğrulayın. 3.Sabitleri çözün. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.17
  • 18. Yerine koyma metodu (yöntemi) En genel yöntem: 1.Çözümün şeklini tahmin edin. 2.Tümevarım ile doğrulayın. 3.Sabitleri çözün. ÖRNEK: T(n) = 4T(n/2) + n 1. T(1) = Θ(1) olduğunu varsayın. 2. O(n3)'ü tahmin edin. (O ve Ω ayrı ayrı kanıtlayın.) 3. k< n için T(k) ≤ ck3 olduğunu varsayın. • T(n) ≤ cn3'ü tümevarımla kanıtlayın. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.18
  • 19. Yerine koyma örneği T (n) = 4T (n / 2) + n ≤ 4c(n / 2)3 + n = (c / 2)n3 + n = cn3 − ((c / 2)n3 − n) istenen –kalan ≤ cn3 istenen (c/2)n3 – n ≥ 0 olduğu zamanlarda, örneğin, eğer c ≥ 2 ve n ≥ 1 ise. kalan September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.19
  • 20. Örnek (devamı) • Başlangıç koşullarını da ele almalı,yani, tümevarımı taban şıklarına (base cases) dayandırmalıyız. •Taban: T(n) = Θ(1) tüm n < n0 için, ki n0 uygun bir sabittir. •1 ≤ n < n0 için, elimizde “Θ(1)” ≤ cn3, olur; yeterince büyük bir c değeri seçersek. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.20
  • 21. Örnek (devamı) • Başlangıç koşullarını da ele almalı,yani, tümevarımı taban şıklarına (base cases) dayandırmalıyız. •Taban: T(n) = Θ(1) tüm n < n0 için, ki n0 uygun bir sabittir. •1 ≤ n < n0 için, elimizde “Θ(1)” ≤ cn3, olur; yeterince büyük bir c değeri seçersek. Bu, sıkı bir sınır değildir ! September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.21
  • 22. Daha sıkı bir üst sınır? T(n) = O(n2) olup olmadığını kanıtlayacağız. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.22
  • 23. Daha sıkı bir üst sınır? T(n) = O(n2) olduğunu kanıtlayacağız. Varsayın ki k < n için T(k) ≤ ck2 olsun: T (n) = 4T (n / 2) + n ≤ 4c(n / 2)2 + n = cn2 + n = cn2 – (– n ) [ istenen –kalan ] ≤ cn2 September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.23
  • 24. Daha sıkı bir üst sınır? T(n) = O(n2) olduğunu kanıtlayacağız. Varsayın ki k < n için T(k) ≤ ck2 olsun: T (n) = 4T (n / 2) + n ≤ 4c(n / 2)2 + n = cn2 + n = cn2 – (– n ) ≤ cn2 Yanlış c > 0 için eşitsizlik doğru değildir. Kaybettik. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.24
  • 25. Özyineleme-ağacı metodu • Özyineleme-ağacı, bir algoritmadaki özyineleme uygulamasının maliyetini (zamanı) modeller. • Özyineleme-ağacı metodu, bazen güvenilir olmayabilir. • Öte yandan özyineleme-ağacı metodu "öngörü" olgusunu geliştirir. • Özyineleme-ağacı metodu "yerine koyma metodu" için gerekli tahminlemelerde yararlıdır . September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.25
  • 26. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: çözün September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.26
  • 27. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: çözün T(n) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.27
  • 28. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: çözün n2 T(n/4) T(n/2) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.28
  • 29. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: çözün n2 (n/4)2 (n/2)2 T(n/16) T(n/8) T(n/8) T(n/4) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.29
  • 30. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: n2 (n/4)2 (n/2)2 (n/16)2 (n/8)2 (n/8)2 (n/4)2 … Θ(1) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.30
  • 31. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: n2 n2 (n/4)2 (n/2)2 (n/16)2 (n/8)2 (n/8)2 (n/4)2 … Θ(1) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.31
  • 32. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: n2 n2 (n/4)2 (n/2)2 5 n2 16 (n/16)2 (n/8)2 (n/8)2 (n/4)2 … Θ(1) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.32
  • 33. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: n2 n2 (n/4)2 (n/2)2 5 n2 16 (n/16)2 (n/8)2 (n/8)2 (n/4)2 25 n 2 256 … Θ(1) September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.33
  • 34. Özyineleme-ağacı örneği T(n) = T(n/4) + T(n/2) + n2: n2 n2 (n/4)2 (n/2)2 5 n2 16 (n/16)2 (n/8)2 (n/8)2 (n/4)2 25 n 2 256 … Θ(1) Toplam September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E.
  • 35. Ana Metod (The Master Method) Ana method aşağıda belirtilen yapıdaki yinelemelere uygulanır: T(n) = a T(n/b) + f (n) , burada a ≥ 1, b > 1, ve f asimptotik olarak pozitiftir. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.35
  • 36. Üç yaygın uygulama f (n)'i nlogba ile karşılaştırın: 1. f (n) = O(nlogba – ε) ε > 0 sabiti durumunda • f (n) polinomsal olarak nlogba göre daha yavaş büyür (nε faktörü oranında). ÇÖZÜM: T(n) = Θ(nlogba) . September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.36
  • 37. Üç yaygın uygulama f (n)'i nlogba ile karşılaştırın: 1.f (n) = O(nlogba – ε) ε > 0 sabiti durumunda; • f (n) polinomsal olarak nlogba göre daha yavaş büyür(nε faktörü oranında). Çözüm: T(n) = Θ(nlogba) . •f (n) = Θ(nlogba lgkn) k ≥ 0 sabiti durumunda; • f (n) ve nlogba benzer oranlarda Çözüm: T(n) =büyürler. k+1n) . Θ(nlogba lg September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.37
  • 38. Üç yaygın uygulama f (n)'i nlogba ile karşılaştırın: 3.f (n) = Ω(nlogba + ε)ε > 0 sabiti durumunda; • f (n) polinomsal olarak nlogba 'ye göre daha hızlı büyür ( nε faktörü oranında), ve f (n), düzenlilik koşulunu af (n/b) ≤ cf (n) durumunda, c < 1 olmak kaydıyla karşılar. Çözüm: T(n) = Θ(f (n)) . September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.38
  • 39. Örnekler Örnek. T(n) = 4T(n/2) + n a = 4, b = 2 ⇒ nlogba = n2; f (n) = n. Durum 1: f (n) = O(n2 – ε) ε = 1 için. ∴ T(n) = Θ(n2). September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.39
  • 40. Örnekler Ör. T(n) = 4T(n/2) + n a = 4, b = 2 ⇒ nlogba = n2; f (n) = n. Durum 1: f (n) = O(n2 – ε) ε = 1 için. ∴ T(n) = Θ(n2). Ör. T(n) = 4T(n/2) + n2 a = 4, b = 2 ⇒ nlogba = n2; f (n) = n2. Durum 2: f (n) = Θ(n2lg0n), yani, k = 0. ∴ T(n) = Θ(n2lg n). September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.40
  • 41. Örnekler Ör. T(n) = 4T(n/2) + n3 a = 4, b = 2 ⇒ nlogba = n2; f (n) = n3. DURUM 3: f (n) = Ω(n2 + ε) ε = 1için ve 4(n/2)3 ≤ cn3 (düz. koş.) c = 1/2 için. ∴ T(n) = Θ(n3). September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.41
  • 42. Örnekler Ör. T(n) = 4T(n/2) + n3 a = 4, b = 2 ⇒ nlogba = n2; f (n) = n3. DURUM 3: f (n) = Ω(n2 + ε) ε = 1için ve 4(n/2)3 ≤ cn3 (düz. koş.) c = 1/2 için. ∴ T(n) = Θ(n3). Ör. T(n) = 4T(n/2) + n2/lg n a = 4, b = 2 ⇒ nlogba = n2; f (n) = n2/lg n. Ana metod geçerli değil. Özellikle, ε > 0 olan sabitler için nε = ω(lg n) elde edilir. September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.42
  • 43. Appendix/EK: Geometrik seriler n+1 1−x ; x ≠ 1 için 1 + x + x + ... + x =2 n 1−x 1 1 + x + x + ... = 2 ; |x| < 1 için 1−x September 12, 2005 Copyright © 2001-5 Erik D. Demaine and Charles E. L2.43