Av l a a lar m otivasyon
This presentation is the property of its rightful owner.
Sponsored Links
1 / 46

AV L Ağaçları : M otivasyon PowerPoint PPT Presentation


  • 122 Views
  • Uploaded on
  • Presentation posted in: General

AV L Ağaçları : M otivasyon. İkili arama ağaçları üzerindeki tartışmalarımızı hatırlarsak Ağacın yüksekliği ekleme sırasına bağımlıdır. Ö .g., 1, 2, 3, 4, 5, 6, 7 sayılarını boş bir ağaca eklersek Problem : Dengenin bozulması – Ağaç bağlantılı liste seklinde bozulur.

Download Presentation

AV L Ağaçları : M otivasyon

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Av l a a lar m otivasyon

AVL Ağaçları: Motivasyon

  • İkili arama ağaçları üzerindeki tartışmalarımızı hatırlarsak

    • Ağacın yüksekliği ekleme sırasına bağımlıdır.

      • Ö.g., 1, 2, 3, 4, 5, 6, 7 sayılarını boş bir ağaca eklersek

      • Problem: Dengenin bozulması – Ağaç bağlantılı liste seklinde bozulur.

    • Tüm operasyonların karmaşıklığı O(h) olduğunda,log N <= h <= N-1, İkili arama ağacı operasyonlarının en kötü çalışma zamanıO(N)olur.

  • Soru: Ekleme sırasına bakmadan BST nin yüksekliği log(n) olabilir mi? Bir başka deyişle, BST’yi dengeli bir şekilde tutabilir miyiz.


Y kseklik dengeli a a lar

Yükseklik Dengeli Ağaçlar

  • BST operasyonlarını daha kısa sürede gerçekleştirmek için pek çok BST dengeleme algoritması vardır.

    • Adelson-Velskii veLandis (AVL) ağaçları(1962)

    • Splay ağaçları (1978)

    • B-ağacıve diğerçok yönlü aramaağaçları (1972)

    • Red-Black ağaçları (1972)

      • Ayrıca Simetrikİkili B-Ağaçları(Symmetric Binary B-Trees) şeklinde de bilinir


Avl a a lar tan m

AVL Ağaçları: Tanım

  • Tüm boş ağaç AVL ağacıdır.

  • Eğer T boş olmayan TLve TR şeklinde sol ve sağ alt ağaçları olan ikili arama ağacı ise, T ancak ve ancak aşağıdaki şartları sağlarsa AVL ağacı şeklinde isimlendirilir.

    • TLve TRAVL ağaçları ise

    • hLve hR TLve TR nin yükseklikleri olmak üzere |hL – hR| <= 1 olmak zorundadır.

TR

TL

hL+1 or hL-1

hL


Avl a a lar

0

6

-1

1

7

4

0

1

0

9

Kırmızı numaralar balans fartörüdür.

AVL Ağaçları

  • AVL ağaçları dengeli ikili arama ağaçlarıdır.

  • Bir düğümdeki denge faktörü = yükseklik(sol altağaç) - yükseklik(sağ altağaç)

  • AVL ağaçlarında balans faktörü sadece -1, 0, 1 olabilir.

  • Her bir düğümün sol ve sağ alt ağaçlarının yükseklikleri arasındaki fark en fazla 1 olabilir.

AVL Ağacı


Avl a a lar rnekler

AVL Ağaçları: Örnekler

-1

6

0

0

6

6

1

10

2

4

0

-1

1

1

9

4

7

5

0

0

8

1

0

0

1

8

0

5

4

0

9

9

7

0

0

AVL Ağacı

AVL Ağacı

AVL Ağacı Değildir

0

-1

6

6

1

6

2

1

7

-2

4

9

2

4

0

0

9

4

-1

1

8

3

-1

0

7

1

0

0

1

5

0

1

0

0

8

9

AVL Ağacı

AVL Ağacı Değildir

AVL Ağacı Değildir

Kırmızı numaralar balans faktörüdür.


Avl a ac ger ekle tirim

AVL Ağacı: Gerçekleştirim

  • AVL ağacının gerçekleştirimi için her x düğümünün yüksekliği kaydedilir.

class AVLDugumu{

intdeger;

intyukseklik;

AVLTDugumusol;

AVLDugumusag;

}

x

key

left

right

height

  • x’in balans faktörü = x’in sol alt ağacının yüksekliği – x’in sağ alt ağacının yüksekliği

  • AVL ağaçlarında, “bf” sadece {-1, 0, 1} değerlerini alabilir.


Avl a a lar1

0

6

-1

1

7

5

0

4

0

9

AVL Ağaçları

  • N düğümlü bir AVL ağacının yüksekliği daima O(log N) dir.

  • Peki nasıl?

AVL Ağacı

Yükseklik = O(logN)

Kırmızı numaralar balans fartörüdür.


Avl a a lar g zel ve irkin

AVL Ağaçları: Güzel ve Çirkin

  • Güzel:

    • Arama süresi O(h) = O(logN)

  • Çirkin

    • Ekleme ve silme işlemleri ağacın dengesiz olmasına neden olabilir.

Ekle 3

0

1

6

6

-1

2

1

-1

7

5

7

5

0

4

4

1

0

9

0

9

3

0

AVL Tree

Artık AVL ağacı değil


Avl a ac nda dengenin sa lanmas

AVL Ağacında Dengenin Sağlanması

  • Problem: Ekleme işlemi bazı durumlarda ekleme noktasına göre kök olan bölgelerde balans faktörün 2 veya -2 olmasına neden olabilir.

  • Fikir: Yeni düğümü ekledikten sonra

    • Balans faktörü düzelterek köke doğru çık.

    • Eğer düğümün balans faktörü 2 veya -2 ise ağaç bu düğüm üzerinde döndürülerek düzeltilir.

1

6

2

-1

7

5

4

1

9

0

3

0


Denge sa lama rnek

Denge Sağlama: Örnek

Ekle 3

Döndürme

0

1

0

6

6

6

2

-1

-1

1

-1

7

7

5

5

7

0

4

0

4

4

1

5

3

0

0

9

9

0

0

9

0

3

0

AVL

AVL

AVL Değil

  • Yenidüğümüeklediktensonra

    • Balansfaktörüdüzelterekkökedoğruçık.

    • Eğerdüğümünbalansfaktörü 2 veya -2 iseağaçbudüğümüzerindedöndürülerekdüzeltilir.


Avl a ac ekleme 1

AVL Ağacı - Ekleme (1)

P Pivot: bf2veya-2

P

L

R

A

B

C

D

  • Pdüğümünün dengeyi bozan düğüm olduğu düşünülürse.

    • Ppivotdüğüm şeklinde isimlendirilir.

    • Eklemeden sonra köke doğru çıkarken bf’nin 2 veya -2 olduğu ilk düğümdür.


Avl a ac ekleme 2

AVL Ağacı - Ekleme (2)

P Pivot: bf2veya-2

P

L

R

A

B

C

D

  • 4 farklı durum vardır:

    • DışDurum(tek döndürme gerektiren) :

      • P’nin sol alt ağacının soluna eklendiğinde (LL Dengesizliği).

      • P’nin sağ alt ağacının sağına eklendiğinde(RR Dengesizliği)

    • İç Durum(2 kez döndürme işlemi gerektiren) :

      • P’nin sol alt ağacının sağına eklendiğinde (RL Dengesizliği)

      • P’nin sağ alt ağacının soluna eklendiğinde(LR Dengesizliği)


Ll dengesizli i d zeltme

LLDengesizliği & Düzeltme

Döndürme

L

2

P

P

0 veya 1

L

R

R

A

A

B

B

C

C

D

D

Ekleme işleminden sonra ağaç

LL Düzeltmesinden sonra ağaç

  • LL Dengesizliği: P’nin sol alt ağacınınsolunaeklendiğimizde (A alt ağacınına)

    • P’nin bfsi2

    • L’nin bfsi0 veya 1

  • Düzeltme: P etrafında sağa doğru dönderme.


Ll dengesizli i d zeltme rne i 1

LLDengesizliği Düzeltme Örneği (1)

Ekle(2)

Döndür

1

1

1

1

10

10

10

10

2

4

4

1

4

1

20

20

20

0

0

0

0

20

0

0

3

3

3

3

0

0

2

1

4

0

0

Başlangıçtaki AVL Ağacı

LL Düzeltmesi

yapıldıktan sonra

AVL ağacı

2

2

0

0

Pivotun

belirlenmesi

2 eklendikten sonra

ağacın durumu

Dengesizliğin türünün belirlenmesi

Balans faktörü düzelterek köke doğru ilerle

  • LL Dengesizliği:

    • P(4)’ün bfsi2

    • L(3)’ünbfsi0 veya 1


Ll dengesizli i d zeltme rne i 2

LLDengesizliği Düzeltme Örneği (2)

Ekle(2)

Döndür

1

2

10

1

10

10

0

4

4

0

1

0

4

20

4

0

20

20

0

0

3

10

0

1

5

3

0

3

3

0

5

5

0

1

0

0

5

20

0

0

2

0

Başlangıçtaki

AVL Ağacı

2

2

0

0

LL Düzeltmesi

yapıldıktan sonra

AVL ağacı

Pivotun

belirlenmesi

2 eklendikten sonra

ağacın durumu

Dengesizliğin türünün belirlenmesi

Balans faktörü düzelterek köke doğru ilerle

  • LL Dengesizliği:

    • P(4)’ün bfsi2

    • L(3)’ünbfsi0 veya 1


Rr dengesizli i d zeltme

RRDengesizliği & Düzeltme

Döndür

R

-2

P

P

L

0 veya -1

R

L

A

A

B

B

C

C

D

D

Ekledikten sonra

RR Düzeltmesi yapıldıktan sonra

  • RR Dengesizliği: P’ninsağ alt ağacınınsağınaeklendiğinde (D alt ağacına eklendiğinde)

    • P bf=-2

    • R  bf= 0 veya -1

  • Düzeltme: P etrafındasala doğrudönderme


Rr dengesizli i d zeltme rne i 1

RRDengesizliği Düzeltme Örneği (1)

-1

Döndür

10

Ekle(40)

10

10

-1

-1

10

-1

-1

-2

0

30

4

0

4

4

20

20

0

0

4

-1

20

0

0

40

20

-1

0

30

30

0

30

0

Başlangıçtaki

AVL Ağacı

RRDüzeltmesi

yapıldıktansonra

AVL ağacı

40

40

0

0

40eklendiktensonra

ağacındurumu

Pivotun

belirlenmesi

Dengesizliğintürününbelirlenmesi

Balansfaktörüdüzelterekkökedoğruilerle

  • RR Dengesizliği:

    • P(20) bf= -2

    • R(30) bf =0 veya -1


Rr dengesizli i d zeltme rne i 2

RRDengesizliği Düzeltme Örneği (2)

-2

Döndür

10

20

10

-1

0

Ekle(40)

4

-1

20

0

4

0

0

-1

20

0

10

30

-1

30

15

0

4

15

30

15

0

0

0

0

40

0

Başlangıçtaki

AVL Ağacı

40

0

RR Düzeltmesi

yapıldıktansonra

AVL ağacı

40eklendiktensonra

ağacındurumu

Dengesizliğintürününbelirlenmesi

Balansfaktörüdüzelterekkökedoğruilerle ve 10’u pivot olarak belirle

  • RR Dengesizliği:

    • P(10) bf= -2

    • R(20) bf =0 veya -1


Lr dengesizli i d zeltme

LRDengesizliği & Düzeltme

1. Döndürme

2

2. Döndürme

P

P

LR

2

R

2

-1

L

R

LR

P

L

L

1

LR

R

C

C

C

D

D

D

A

A

A

Eklemedensonraağaç

1. Döndürmeden sonra ağaç

B1

B2

B1

B2

B1

B2

LR Düzeltmesinden sonra

  • LR Dengesizliği: P’nin sol alt ağacının sağınaeklendiğinde (LR ağacına)

    • P  bf=2

    • L  bf=-1

  • Düzeltme: L & P etrafında 2 kez döndürme


Lr dengesizli i d zeltme rne i

LR Dengesizliği Düzeltme Örneği

2

Döndür

1

Ekle(5)

0

7

10

10

2

4

4

0

10

0

-1

20

4

-1

0

20

0

1

3

5

0

3

3

0

20

7

0

0

0

0

7

1

LR Düzeltmesinden sonra

ağacın durumu

Başlangıçtaki

AVL Ağacı

5

0

2 eklendikten sonra

ağacın durumu

Balansfaktörüdüzelterekkökedoğruilerle ve 10’u pivot olarak belirle

Dengesizliğintürününbelirlenmesi

  • LR Dengesizliği:

    • P(10) bf=2

    • L(4) bf =-1


Rl dengesizli i d zeltme

RL Dengesizliği & Düzeltme

RL

-2

P

1. Döndürme

-2

2. Döndürme

P

P

R

2

1

R

2

L

RL

L

L

1

R

RL

D

D

D

B

A

B

A

B

A

Eklemedensonraağaç

RL Düzeltmesinden sonra

1. Döndürmeden sonra

C1

C2

C1

C2

C1

C2

  • RL Dengesizliği: P’nin sağ alt ağacının solunaeklendiğinde (RL alt ağacına)

    • P  bf=-2

    • R  bf=1

  • Düzeltme:R & P etrafında 2 kez döndürme.


Rl dengesizli i d zeltme rne i

RL Dengesizliği Düzeltme Örneği

-2

Ekle(17)

Döndür

15

0

10

-1

10

2

4

0

1

20

1

1

10

20

4

0

20

0

15

30

0

4

-1

30

0

0

17

15

30

0

0

0

Başlangıçtaki

AVL Ağacı

17

0

RL Düzeltmesi

yapıldıktansonra

AVL ağacı

17eklendiktensonra

ağacındurumu

1

Balansfaktörüdüzelterekkökedoğruilerleve 10’u pivot olarakbelirle

Dengesizliğintürününbelirlenmesi

  • RL Dengesizliği:

    • P(10)  bf= -2

    • R(20)  bf=1


Silme

Silme

  • Silme işlemi ekleme işlemi ile benzerlik gösterir.

  • Öncelikle ikili arama ağacındaki gibi normal silme işlemi yapılır.

  • Düğüm silindikten sonra, ağaçta köke doğru ilerleyin ve balans faktörünü güncelleyin.

    • Eğer dengesiz bir düğüm tespit edilirse, uygun döndürme işlemlerini yapın.

    • Bu işlem sırasında birden fazla döndürme işlemi yapılabilir.


Silme rne i 1

Silme Örneği (1)

Sil(20)

Döndür

1

1

2

10

10

10

-1

4

4

0

20

4

0

4

0

10

0

3

1

0

5

0

5

3

0

5

3

5

0

3

0

0

0

0

LL Düzeltmesinden

Sonra AVL Ağacı

20 silindikten sonra

Ağacın durumu

10’un pivot olarak belirlenmesi

Başlangıçtaki

AVL Ağacı

Dengesizliğin türünün belirlenmesi

Balans faktörü düzelterek köke doğru ilerle

  • LL Dengesizliği:

    • P(10)’ün bfsi2

    • L(4)’ünbfsi0 veya 1


Silme rne i 2

Silme Örneği (2)

Sil(20)

Döndür

1

1

2

10

10

10

0

5

2

4

-1

20

4

-1

4

10

0

-1

4

0

0

1

LR Düzeltmesinden

sonra AVL Ağacı

5

0

5

5

0

0

20 silindikten sonra

Ağacın durumu

10’un pivot olarak belirlenmesi

Başlangıçtaki

AVL Ağacı

Balans faktörünü düzelterek köke doğru ilerle

Dengesizliğin

türünün belirlenmesi

  • LRDengesizliği:

    • P(10)  bf = 2

    • L(4)  bf =-1


Silme rne i 3

Silme Örneği (3)

1

15

1

10

Sil(10)

-1

5

20

1

-1

20

5

1

-1

30

1

3

7

-1

-1

30

15

1

3

7

0

-1

2

1

4

0

40

8

0

0

2

1

4

0

40

8

0

0

1

0

10 silindikten sonra

10 ve 15(sağ alt ağaçtaki en küçük eleman) yer değiştirdi ve 15 silindi.

1

0

Başlangıçtaki AVL Ağacı

Balans faktörü düzelterek köke doğru ilerle


Silme rne i 3 devam

Silme örneği (3) - devam

1

1

15

15

Döndür

-2

5

30

1

0

5

20

1

20

0

40

1

7

3

-1

0

-1

30

1

3

7

-1

2

1

4

0

2

8

1

0

4

0

40

8

0

0

1

0

1

0

RR Dengesizliği

düzeltildikten sonra

20’nin pivot olarak seçilmesi

Dengesizliğin türünü belirle

Yukardaki AVL ağacı mıdır?

  • RR Dengesizliği:

    • P(20) bf= -2

    • R(30) bf=0 veya -1

Balans faktörü düzelterek köke doğru ilerle.


Silme rne i 3 devam1

Silme Örneği (3) - devam

2

15

5

0

Döndür

5

30

1

0

1

3

0

15

20

2

0

40

1

7

1

3

0

7

4

-1

0

-1

30

0

2

1

1

0

4

0

8

20

0

0

8

40

0

0

1

0

Düzeltilmiş AVL ağacı

15’in pivot olarak belirlenmesi

Dengesizliğin türünü belirle

  • LL Dengesizliği:

    • P(15) bf=2

    • L(5)  bf= 0 veya 1


Arama bul

Arama (Bul)

  • AVL ağacı bir tür İkili Arama Ağacı (BST) olduğundan arama algoritması BST ile aynıdır.

  • O(logN) de çalışması garantidir.


Avl a a lar zet

AVL Ağaçları - Özet

  • AVL Ağaçlarının Avantajları

    • AVL ağacı devamlı dengeli olduğu için Arama/Ekleme/Silme işlemi O(logN) yapılır.

    • Düzeltme işlemi algoritmaların karmaşıklığını etkilemez.

  • AVL Ağaçlarının Dezavantajları:

    • Balans faktörü için ekstra yer gereklidir.

    • Arı dengeli ağaçlarda AVL ağaçları kadar iyi performans verir ayrıca bu tür algoritmalarda balans faktör kullanılmaz

      • Splay ağaçları


Splay a a lar

Splay Ağaçları

  • Splay ağaçları ikili arama ağaç yapılarından birisidir.

    • Her zaman dengeli değildir.

    • Arama ve ekleme işlemlerinde dengelemeye çalışılır böylece gelecek operasyonlar daha hızlı çalışır.

  • Sezgiseldir.

    • Eğer X bir kez erişildi ise, bir kez daha erişilecektir.

    • X erişildikten sonra "splaying" operasyonu yapılır.

      • X köke taşınır.


Av l a a lar m otivasyon

Örnek

Kök

Kök

  • Burada ağacın dengeli olmasının yanı sıra 12 ye O(1) zamanında erişilebiliyor.

  • Aktif (son erişilenler)düğümler köke doğru taşınırken aktif olmayan düğümler kökten uzaklaştırılır.

15

12

Bul(12) den sonra

2

18

15

6

6

Splay ana düşünce:

Döndürme kullanarak

12’yi köke getir.

1

3

14

12

9

18

3

9

14

12 arandıktan sonra

Başlangıçtaki ağaç


Splay a ac terminolojisi

Splay Ağacı Terminolojisi

  • X kök olmayan bir düğüm olsun. (ailesi olan)

  • P düğümü X’in aile düğümü olsun.

  • G düğümü X’in ata düğümü olsun.

  • G ve Xarasındaki yol düşünüldüğünde:

    • Her sola gitme işlemine “zig” işlemi denilmektedir.

    • Her sağa gitme işlemine “zag” işlemi denilmektedir.

  • Toplam 6 farklı durum oluşabilir:

G

G

G

G

P

P

P

P

P

P

X

X

X

X

X

X

2. zig-zig

1. zig

3. zig-zag

4. zag-zig

5. zag-zag

6. zag


Splay a a lemleri

Splay Ağaç İşlemleri

  • X’e erişildiğinde 6 tane rotasyon işleminden birisi uygulanır:

    • Tek Dönme (X P’ye sahip ama G’ye sahip değil)

      • zig, zag

    • Çift Dönme (X hem P hemde G’ye sahip)

      • zig-zig, zig-zag

      • zag-zig, zag-zag


Splay a a lar zig lemi

Splay Ağaçları: Zig İşlemi

  • “Zig” işlemi AVL ağacındaki gibi tek döndürme işlemidir.

  • Örneğin erişilen elemanın 6 olduğu düşünülürse.

15

6

Zig-Sağ

18

6

15

3

12

3

18

12

  • “Zig-Sağ” işlemi 6’yı köke taşır.

  • Bir sonraki işlemde 6’ya O(1) de erişilebilir.

  • AVL ağacındaki sağ dönme işlemi ile benzerdir.


Splay a a lar zig zig lemi

Splay Ağaçları: Zig-Zig İşlemi

  • “Zig-Zig” işlemi aynı türde 2 tane dönme işlemi içerir.

  • Örneğin erişilen elemanın 3 olduğu düşünülürse.

3

15

6

Zig-Sağ

Zig-Sağ

6

1

18

6

15

3

4

15

12

3

4

12

18

1

12

18

1

4

  • “zig-zig” işlemi ile birlikte 3 köke taşınmış oldu.

  • Not: Aile - ata arasındaki döndürme önce yapılıyor.


Splay a a lar zig zag lemi

Splay Ağaçları: Zig-Zag İşlemi

  • “Zig-Zag” işlemi farklı türde 2 tane dönme işlemi içerir.

  • Örneğin erişilen elemanın 3 olduğu düşünülürse.

15

Zig-Sağ

12

15

Zag-Sol

18

6

6

15

18

12

18

14

3

10

12

6

3

14

3

10

14

10

  • “zig-zag” işlemi ile birlikte 3 köke taşınmış oldu.

  • AVL ağacındaki LR dengesizliğini düzeltmek için kullanılan işlemler ile aynıdır.(önce sol dönme, daha sonra sağ dönme)


Splay a a lar zag zig lemi

Splay Ağaçları: Zag-Zig İşlemi

  • “Zag-Zig” işlemi farklı türde 2 tane dönme işlemi içerir.

  • Örneğin erişilen elemanın 17 olduğu düşünülürse.

15

15

Zag-Sol

17

Zig-Sağ

15

20

6

20

6

17

16

30

6

18

20

30

17

16

30

18

18

16

  • “zag-zig” işlemi ile birlikte 17 köke taşınmış oldu.

  • AVL ağacındakiRL dengesizliğini düzeltmek için kullanılan işlemler ile aynıdır.(önce sağ dönme, daha sonra sol dönme)


Splay a a lar zag zag lemi

Splay Ağaçları: Zag-Zag İşlemi

  • “Zag-Zag” işlemi aynı türde 2 tane dönme işlemi içerir.

  • Örneğin erişilen elemanın 30 olduğu düşünülürse.

15

20

Zag-Sol

Zag-Sol

30

15

30

20

6

20

40

15

17

6

25

40

25

17

30

17

6

40

25

  • “zag-zag” işlemi ile birlikte 30 köke taşınmış oldu.

  • Not: Aile - ata arasındaki döndürme önce yapılıyor.


Splay a a lar zag lemi

Splay Ağaçları: Zag İşlemi

  • “Zag” işlemi AVL ağacındaki gibi tek döndürme işlemidir.

  • Örneğin erişilen elemanın 15 olduğu düşünülürse.

15

6

Zag-Sol

18

6

15

3

18

12

12

3

  • “Zag-sol işlemi 15’i köke taşır.

  • Bir sonraki işlemde 15’e O(1) de erişilebilir.

  • AVL ağacındaki sol dönme işlemi ile benzerdir.


Splay a ac rnek 40 a eri ildi inde

Splay AğacıÖrnek: 40’a Erişildiğinde

80

80

40

85

70

70

30

85

70

75

60

80

50

40

75

85

75

50

65

60

45

50

30

65

55

40

55

60

45

65

55

30

45

Zig-zig

Zig-zig

(c)

(a)

(b)


Splay a ac rnek 60 a eri ildi inde

Splay AğacıÖrnek: 60’a Erişildiğinde

40

40

60

30

60

70

30

40

70

70

50

80

30

50

50

80

65

80

45

65

55

85

75

60

45

85

75

45

55

85

75

65

55

Zig-zag

zag

(a)

(b)

(c)


Di er i lemler s ras nda splaying

Diğer işlemler Sırasında Splaying

  • Splaying sadece Arama işleminden sonra değil Ekle/Sil gibi değer işlemlerden sonra da uygulanabilir.

  • Ekle X: X yaprak düğüme eklendikten sonra (BST işlemi) X’i köke taşı.

  • Sil X: X’i ara ve köke taşı. Kökte bulunan X’i sil ve sol alt ağaçtaki en büyük elemanı köke taşı.

  • Bul X:Eğer X bulunamazsa aramanın sonlandığı yaprak düğümü köke taşı.


Splay a a lar zet

Splay Ağaçları - Özet

  • Splaying işlemi ile ağaç genel olarak dengede kalıyor.

  • Analiz Sonucu: N boyutlu bir Splay ağacı üzerinde M tane işlemin çalışma süresi O(M log N) dir. Dolayısıyla tek bir işlem için çalışma zamanı O(log N) dir.

  • Erişilecek elemanların derinliği çok büyük olsa bile, arama işlemlerinin süresi bir süre sonra kısalacaktır. Çünkü her bir arama işlemi ağacın dengelenmesini sağlıyor.


Rnek 1

Örnek - 1

  • 1, 2, …, 6 elemanları sırası ile boş bir Splay ağacına ekleniyor.

  • Oluşan ağacı çizerek gösteriniz.

  • “6" ya erişim nasıl olur.

  • "1" e erişim sağlandıktan sonra ağacın yapısını çizerek gösteriniz.


Rnek 2

Örnek - 2

  • 1, 2, …, 6 elemanları sırası ile boş bir AVL ağacına ekleniyor.

  • Her bir eleman eklendiğinde oluşan ağaçları çizerek gösteriniz.

  • “6" ya erişim nasıl olur.


  • Login