İkili Arama Ağaçları (Binary Search Trees) BST

Slides:



Advertisements
Benzer bir sunumlar
8. SINIF 3. ÜNİTE BİLGİ YARIŞMASI
Advertisements

el ma 1Erdoğan ÖZTÜRK ma ma 2 Em re 3 E ren 4.
(Gelecek zaman) Bu eve ………..
Ders İçeriği Ağaç Veri Modeli Tanım ve Gerçekleştirim İkili Ağaç
Oktay ERBEY CRM & B2B Ürün Satış Hizmet Yöneticisi
ALİ YALKIN İLKÖĞRETİM OKULU 2/A SINIFI ÇALIŞMA SAYFASI
NOKTA, DOĞRU, DOĞRU PARÇASI, IŞIN, DÜZLEMDEKİ DOĞRULAR
Saydığımızda 15 tane sayı olduğunu görürüz.
ASELSAN- TOKİ YAPRACIK KONUTLARI KOORDİNASYON KURULU
Ders İçeriği Bağlantılı Liste İki Yönlü Bağlantılı Liste
AVL-Ağaçları (Trees).
B+-Ağaçları.
Silme Anahtar hedefi silmek için, x yaprağında buluruz ve sonra sileriz. Dikkat edilmesi gereken iki durum vardır. (1) Hedef bazı iç düğümlerde bir anahtar.
Silme Sil 12 Tek dönüş.
İkili Ağaçlar İkili Arama Ağaçları
Algoritmalar DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar
TC ÇAVDARHİSAR KAYMAKAMLIĞI İLÇE MİLLİ EĞİTİM MÜDÜRLÜĞÜ 2011 – 2012 EĞİTİM-ÖĞRETİM YILI OKULLAR HAYAT OLSUN PROJESİ.
KIR ÇİÇEKLERİM’ E RakamlarImIz Akhisar Koleji 1/A.
Verimli Ders Çalışma Teknikleri.
Prof. Dr. Leyla Küçükahmet
FONKSİYONLAR ve GRAFİKLER
1 ERK İSG&İK – –
SLAYTI MUTLAKA SESLİ İZLEYİNİZ… İYİ SEYİRLER…
HAZIRLAYAN:SAVAŞ TURAN AKKOYUNLU İLKÖĞRETİM OKULU 2/D SINIFI
ARALARINDA ASAL SAYILAR
ZAMBAK 1 SORU BANKASI UĞUR CESUR 1 ZAMBAK 1 SORU BANKASI ÖZEL SORULARI Hazırlayan: UĞUR CESUR.
Gün Kitabın Adı ve Yazarı Okuduğu sayfa sayısı
FİİLİMSİLER (EYLEMSİLER)
Binary Ağaçlar (Ekleme/Silme Örnekleri)
Algoritmalar DERS 4 Çabuk sıralama Böl ve fethet Bölüntüler
Problem Çözme Ve Problem Çözme Stratejileri Ödevi Cihan GÖÇ
Matematik 2 Örüntü Alıştırmaları.
Bulut bilişim için Üniversitelerimizde bilişim personeli yeterlikleri 18 Aralık 2013 – Aksaray Üniversitesi Bilişim Teknik Personeli Yeterlik Ölçeği Toplantısı.
TÜRKİYE İSTATİSTİK KURUMU İzmir Bölge Müdürlüğü 1/25.
MIT503 Veri Yapıları ve algoritmalar Veri ağaçları
Tam sayılarda bölme ve çarpma işlemi
DOĞUŞ ÜNİVERSİTESİ VI. LİSELERARASI MATEMATİK YARIŞMASI
TEST – 1.
HABTEKUS' HABTEKUS'08 3.
BTP102 VERİTABANI YÖNETİM SİSTEMLERİ 1
8 ? E K S İ L E N EKSİLEN _ 5 5 ÇIKAN FARK(KALAN) 8.
Chapter 6: Using Arrays.
Ek-2 Örnekler.
Yard. Doç. Dr. Mustafa Akkol
Diferansiyel Denklemler
1 2 3 GÜVENLİK İÇİN ÖNCELİKLE RİSKİ YOK EDİLMELİDİR. RİSKİ YOK EDEMIYORSANIZ KORUNUN KKD; SİZİ KAZALARDAN KORUMAZ, SADECE KAZANIN ŞİDDETİNİ AZALTIR.
Bankacılık sektörü 2010 yılının ilk yarısındaki gelişmeler “Temmuz 2010”
SÜLEYMAN DEMİREL ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ
1-1-2 Türkiye genelinde Acil Sağlık Hizmetlerine erişim numaraları ile yapılmaktadır. Ambulans içinde Doktor,Hemşire,Sağlık Memuru,AABT,ATT, Şoför.
1 (2009 OCAK-ARALIK) TAHAKKUK ARTIŞ ORANLARI. 2 VERGİ GELİRLERİ TOPLAMIDA TAHAKKUK ARTIŞ ORANLARI ( OCAK-ARLIK/2009 )
Çocuklar,sayılar arasındaki İlişkiyi fark ettiniz mi?
İSMİN HALLERİ.
Toplama Yapalım Hikmet Sırma 1-A sınıfı.
RASYONEL SAYILARLA TOPLAMA ve ÇIKARMA İŞLEMLERİ
1.HAFTA 26 Ağustos 2009 ÇARŞAMBA 2.HAFTA 01 EYLÜL 2009 SALI 3.HAFTA 09 EYLÜL 2009 ÇARŞAMBA 4.HAFTA 15 EYLÜL 2009 SALI 5.HAFTA 23 EYLÜL 2009 ÇARŞAMBA 6.HAFTA.
1.HAFTA 26 Ağustos 2009 ÇARŞAMBA 2.HAFTA 01 EYLÜL 2009 SALI 3.HAFTA 09 EYLÜL 2009 ÇARŞAMBA 4.HAFTA 15 EYLÜL 2009 SALI 5.HAFTA 23 EYLÜL 2009 ÇARŞAMBA 6.HAFTA.
ECHİNODERMATA Kambriyen – Güncel tümüyle denizel Filum
SLAYT 1BBY220 OCLC WorldCat Yaşar Tonta Hacettepe Üniversitesi yunus.hacettepe.edu.tr/~tonta/ BBY220 Bilgi Erişim İlkeleri.
Partially Ordered Trees (POT)
CEBİRSEL İFADELERİ ÇARPANLARINA AYIRMA
Yard. Doç. Dr. Mustafa Akkol
BTP102 VERİTABANI YÖNETİM SİSTEMLERİ 1
ÖĞR. GRV. Ş.ENGIN ŞAHİN BİLGİ VE İLETİŞİM TEKNOLOJİSİ.
Diferansiyel Denklemler
AVL(Adel’son-Vel’skiĭ and Landis) Ağacı AVL ağacı, iki alt ağacının yükseklikleri farkının en fazla 1 olabildiği dengeli ikili arama ağacıdır. AVL ağacında.
NİŞANTAŞI ÜNİVERSİTESİ
Ders 9: İkili arama ağaçları
Sunum transkripti:

İkili Arama Ağaçları (Binary Search Trees) BST Ders 5

İkili arama ağacı özelliği x ikili arama ağacında herhangi bir düğüm olsun. Eğer y düğümü x’in sol alt ağacında ise key[y] ≤ key[x] Eğer y düğümü x’in sağ alt ağacında ise key[y] ≥ key[x]

İkili arama ağacı özelliği x ikili arama ağacında herhangi bir düğüm olsun. Eğer y düğümü x’in sol alt ağacında ise key[y] ≤ key[x] Eğer y düğümü x’in sağ alt ağacında ise key[y] ≥ key[x] 2 Kök 3 7 8 5 4 >2 SağAA Kök 5 SolAA SağAA 3 7 2 4 8 <5 >5 3 3

İkili Arama Ağaçları (BST) İki arama ağacı bağlı veri yapısı kullanılarak gerçekleştirilebilir. Ağaçtaki her düğüm 3 adet pointer alanına sahip bir nesnedir. Sol çocuk sol ile, sağ çocuk sağ ile ebeveyn ise p ile temsil edilir. NIL ya da NULL herhangi bir çocuk veya ebeveyn olmadığını ifade eder. Kök düğümü bir İAA’da p alanı NIL’e sahip tek düğümdür. 4

İkili Arama Ağaçlarında İşlemler Dolaşma (Traversal) Arama (Search) Minimum Maximum Successor Predessor Ekleme (Insertion) Silme (Deletion) 5

1-) Dolaşma (Traversal) Ağaç yapısı üzerinde herhangi bir düğüme erişme sürecimize ağacı gezmek (traverse) denir. Bir ağacı en çok bilinen üçdeğişik yöntemle gezebiliriz : i) Sıralı (Inorder) ya da kök ortada ii) Kök sonda (Postorder) iii) Kök başta (Preorder) 6

Inorder-tree walk Bu dolaşma yönteminde önce sol alt ağaç sonra alt ağacın kökü ve en sonda ise sağ alt ağaç dolaşılır.

Preorder-tree walk Bu dolaşma yönteminde alt ağaçlardan önce kök dolaşılır.

Postorder-tree walk Bu dolaşma yönteminde ise alt ağaçlardan sonra kök dolaşılır.

Inorder-tree walk 6 3 7 2 5 8

2-Arama 15 6 18 3 7 17 20 2 4 13 13’ü ara 9

2-Arama (Özyinelemeli)

2-Arama (İteratif) 13 13

3- Minimum Bulma En küçük elemanı içeren düğüm en soldaki düğümde bulunur. Kökten başlayarak devamlı sola gidilerek bulunur 15 6 18 3 7 17 20 2 4 13 Minimum 9

3- Minimum Bulma

4- Maksimum Bulma En büyük elemanı içeren düğüm en sağdaki düğümde bulunur. Kökten başlayarak devamlı sağa gidilerek bulunur 15 6 18 3 7 17 20 Maximum 2 4 13 9

4- Maksimum Bulma

5- Successor (sonra gelen en küçük) Bir x düğümünün successor’u key[x] değerinden büyük en küçük değerli düğümdür.

5- Successor (sonra gelen en küçük) 15 6 18 3 7 17 20 2 4 15’in Successor’ı 13 9 Durum 1: x düğümünün sağ alt ağacı boş değilse

5- Successor (sonra gelen en küçük) 13’ün successor’ı 15 6 18 3 7 17 20 2 4 13 9 Durum 2: x düğümünün sağ alt ağacı boş ise

5- Successor (sonra gelen en küçük) 15 6 18 3 7 17 20 2 4 13 9

6-Ekleme 12 5 18 2 9 15 19 13 17 13 elemanını ekleme

6-Ekleme

6-Ekleme 12 5 18 2 9 15 19 13 17 24 24

7-Silme 13 elemanını silme (z’nin çocuğu olmadığı durum) 15 16 5 5 3 2 12 20 13 z 10 18 23 6 7 13 elemanını silme (z’nin çocuğu olmadığı durum)

7-Silme 13 elemanını silme (z’nin çocuğu olmadığı durum) 15 16 5 5 3 2 12 20 10 18 23 6 7 13 elemanını silme (z’nin çocuğu olmadığı durum)

7-Silme 16 elemanını silme (z’nin bir çocuğu olduğu durum) 15 16 z 5 5 3 2 12 20 13 10 18 23 6 7 16 elemanını silme (z’nin bir çocuğu olduğu durum)

7-Silme 16 elemanını silme (z’nin bir çocuğu olduğu durum) 15 5 5 20 2 3 2 12 18 23 13 10 6 7 16 elemanını silme (z’nin bir çocuğu olduğu durum)

7-Silme 15 z 5 5 16 3 2 12 20 10 13 18 23 6 y 7 5 elemanını silme (5’in successor’u 6) (z’nin ikiçocuğu olduğu durum)

7-Silme 5 elemanını silme (z’nin ikiçocuğu olduğu durum) 15 6 y z 5 16 3 2 12 20 10 13 18 23 7 5 elemanını silme (z’nin ikiçocuğu olduğu durum)

7-Silme 5 elemanını silme (z’nin ikiçocuğu olduğu durum) 15 6 16 5 2 3 12 20 10 13 18 23 7 5 elemanını silme (z’nin ikiçocuğu olduğu durum)

7-Silme 32 32

İkili Arama ağacı Uygulamaları İkili arama ağacı harita, sözlük gibi birçok uygulamada kullanılır. İkili arama ağacı (anahtar, değer) çifti şeklinde kullanılacak sistemler için uygundur. Ö.g.: Şehir Bilgi Sistemi Posta kodu veriliyor , şehir ismi döndürülüyor. (posta kodu/ Şehir ismi) Ö.g.: telefon rehberi İsim veriliyor telefon numarası veya adres döndürülüyor. (isim, Adres/Telefon) Ö.g.: Sözlük Kelime veriliyor anlamı döndürülüyor. (kelime, anlam) 33

İkili Arama Ağacı – Sonuç İki arama ağaç işlemlerinin karmaşıklığı O(h) Fakat h ağacın derinliğine bağlı. Örnek: 1 2 3 4 5 6 sayılarını sıralı bir şekilde ekleyelim. Ortaya çıkan ağaç bağlantılı listeye benzemektedir. Dolayısıyla karmaşıklık O(n) şeklinde olacaktır. Daha iyisi yapılabilir mi? Ağacımızı dengeli yaparsak evet? AVL-ağaçları Splay ağaçları Red-Black ağaçları B ağaçları, B+ agaçları kök 1 2 3 4 5 34 6