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

Διαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣ
Διαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣΔιαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣ
Διαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣ
babis1977_v
 
eTailing India Chennai Conclave 2013 Part-2
eTailing India Chennai Conclave 2013 Part-2eTailing India Chennai Conclave 2013 Part-2
eTailing India Chennai Conclave 2013 Part-2
eTailing India
 
dene/tiviace_english.pdf
dene/tiviace_english.pdfdene/tiviace_english.pdf
dene/tiviace_english.pdf
Batın Düz
 
продвижение в социальных сетях
продвижение в социальных сетяхпродвижение в социальных сетях
продвижение в социальных сетях
Oleg Bukatchuk
 
dene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptxdene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptx
Batın Düz
 
eTailing India Chennai Conclave 2013 Part 4
eTailing India Chennai Conclave 2013 Part 4eTailing India Chennai Conclave 2013 Part 4
eTailing India Chennai Conclave 2013 Part 4
eTailing India
 

Viewers also liked (18)

Διαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣ
Διαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣΔιαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣ
Διαμόρφωση Εργαστηρίου Πληροφορικής ΓΕΛ ΚΑΛΗΣ
 
eTailing India Chennai Conclave 2013 Part-2
eTailing India Chennai Conclave 2013 Part-2eTailing India Chennai Conclave 2013 Part-2
eTailing India Chennai Conclave 2013 Part-2
 
Why Exhibit_cloud
Why Exhibit_cloudWhy Exhibit_cloud
Why Exhibit_cloud
 
Funding Trends In Indian eCommerce 2014
Funding Trends In Indian eCommerce 2014Funding Trends In Indian eCommerce 2014
Funding Trends In Indian eCommerce 2014
 
U beema zindagi
U beema zindagiU beema zindagi
U beema zindagi
 
dene/ders2.ppt
dene/ders2.pptdene/ders2.ppt
dene/ders2.ppt
 
Government Puts New Measures For Digital Payments
Government Puts New Measures For Digital PaymentsGovernment Puts New Measures For Digital Payments
Government Puts New Measures For Digital Payments
 
Football sponsorship offers france
Football sponsorship offers franceFootball sponsorship offers france
Football sponsorship offers france
 
dene/tiviace_english.pdf
dene/tiviace_english.pdfdene/tiviace_english.pdf
dene/tiviace_english.pdf
 
Whitebikes Open Source weekend - whitebikes bikesharing
Whitebikes Open Source weekend - whitebikes bikesharingWhitebikes Open Source weekend - whitebikes bikesharing
Whitebikes Open Source weekend - whitebikes bikesharing
 
продвижение в социальных сетях
продвижение в социальных сетяхпродвижение в социальных сетях
продвижение в социальных сетях
 
Effective Marketing Mix- Place Strategy in eCommerce
Effective Marketing Mix- Place Strategy in eCommerceEffective Marketing Mix- Place Strategy in eCommerce
Effective Marketing Mix- Place Strategy in eCommerce
 
Create Your eCommerce Photo Catalogue
Create Your eCommerce Photo CatalogueCreate Your eCommerce Photo Catalogue
Create Your eCommerce Photo Catalogue
 
dene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptxdene/TIVIACE_turkce.pptx
dene/TIVIACE_turkce.pptx
 
Ketto – Building Asia’s Largest Crowd Funding Platform at eTailing India Expo'17
Ketto – Building Asia’s Largest Crowd Funding Platform at eTailing India Expo'17Ketto – Building Asia’s Largest Crowd Funding Platform at eTailing India Expo'17
Ketto – Building Asia’s Largest Crowd Funding Platform at eTailing India Expo'17
 
eTailing India Chennai Conclave 2013 Part 4
eTailing India Chennai Conclave 2013 Part 4eTailing India Chennai Conclave 2013 Part 4
eTailing India Chennai Conclave 2013 Part 4
 
Narendra modi’s independence day speech with viewpoint on e commerce
Narendra modi’s independence day speech with viewpoint on e commerceNarendra modi’s independence day speech with viewpoint on e commerce
Narendra modi’s independence day speech with viewpoint on e commerce
 
Why Exhibit Logistics Company
Why Exhibit Logistics CompanyWhy Exhibit Logistics Company
Why Exhibit Logistics Company
 

More from Batın Düz

dene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfdene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdf
Batın Düz
 
dene/tiviace_english.pptx
dene/tiviace_english.pptxdene/tiviace_english.pptx
dene/tiviace_english.pptx
Batın Düz
 
dene/tiviace_english.pptx
dene/tiviace_english.pptxdene/tiviace_english.pptx
dene/tiviace_english.pptx
Batın Düz
 
dene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdfdene/TIVIACE_turkce.pdf
dene/TIVIACE_turkce.pdf
Batın Düz
 
dene/TIVIACE_turkce03.ppt
dene/TIVIACE_turkce03.pptdene/TIVIACE_turkce03.ppt
dene/TIVIACE_turkce03.ppt
Batın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
Batın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
Batın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
Batın Düz
 
dene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.pptdene/Sunumlar/cab_abst.ppt
dene/Sunumlar/cab_abst.ppt
Batı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.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/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/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/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