Dengeli İkili Ağaç Kerem ERZURUMLU Hacettepe Üniversitesi Bilgisayar Bilimleri Mühendisliği.

Slides:



Advertisements
Benzer bir sunumlar
TÜRKİYE ESNAF ve SANATKARLARI KONFEDERASYONU HİZMETİÇİ EĞİTİM SEMİNERİ
Advertisements

Yığınlama Sıralaması (Heap Sort)
Ahmet DERVİŞ Ahmet DERVİŞ LKD Seminerleri Linux Kullanıcıları Derneği
Ders İçeriği Ağaç Veri Modeli Tanım ve Gerçekleştirim İkili Ağaç
FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ
Yinelemeli Algoritma Analizi & Asimptotik Notasyon
Ayrık Yapılar Algoritma Analizi.
Kerem ERZURUMLU Linux Sunucu Dünyası Kerem ERZURUMLU
Sayısal İşaret İşleme Laboratuarı
NESNEYE YÖNELİK PROGRAMLAMA SINIFLAR
APACHE, PHP VE LINUX İLE MAKSİMUM PERFORMANS
Temel Linux Sunucusu Kurulumu
YAPAY ZEKA ÖDEV - 3 Kenan KILIÇASLAN Trakya Üniversitesi Fen Bilimleri Enstitüsü Makina Mühendisliği Doktora Programı.
E Y L E M 3. 1 Avrupa Birliği Komşu Ülkeleri İle İş Birliği PROGRAMI.
AVL-Ağaçları (Trees).
KARAR ANALİZİ (KARAR AĞAÇLARI)
İkili Ağaçlar İkili Arama Ağaçları
ODTÜ Makina Mühendisliği Biyomekanik Çalışma Grubu
Selçuk Üniversitesi’nin Bilişime Gönül Veren Gençleri
Uygulamalı Örneklem Seçimi
Soru1: kuvvet(taban,us) Şeklinde bir yinelenen fonksiyon yazın
Tam İkili Ağaçlar 9. Ünite ağaçlardan bahseder.
Bölüm 10 Yapılar ve Birleşimler
Kural ve Sorgu Örüntülerinin Düzenlenmesi ile Rete Tabanlı bir Çıkarsama Motorunun Eniyilenmesi Dr. Tuğba Özacar Öztürk Ege Üniversitesi.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 3: Döngüler
Format Deyimleri Örnekleri;
YAPAY ZEKA ve UZMAN SİSTEMLER
While Döngüsü Tekrarlama deyimidir. Bir küme ya da deyim while kullanılarak bir çok kez yinelenebilir. Yinelenmesi için koşul sınaması döngüye girilmeden.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 5: Fonksiyonlar
C# Metot Overloading (Aşırı yükleme)
Veri Yapıları ve Algoritmalar
R. Orçun Madran.
TEST – 1.
Kabuk Programlama Kerem ERZURUMLU
XII International TwelfthTurkish Symposium on Artificial Intelligence and Neural Networks 2003 Canakkale Turkey Veri Tabanı Sunucu Kümelerinde Yük Dengeleme.
SİU 2009 Sınıflandırıcılarda Hata Ölçülmesi ve Karşılaştırılması için İstatistiksel Yöntemler Ethem Alpaydın Boğaziçi Üniversitesi
Sistem ve Ağ Yönetiminde Parola Yönetim Zorlukları
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Linux Kurulumu BİLGİSAYAR PROGRAMCILIĞI BÖLÜMÜ
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Kabuk Programlama Kerem ERZURUMLU
Dersin Kapsamı Bilgisayar Nedir, Ne Yapar?
Quest Atlantis Çok-Kullanıcılı Sanal Ortamları Kullanan Eğitsel Bir Bilgisayar Oyunu Örneği: Quest Atlantis Projesi Öğr. Gör. Dr. Hakan Tüzün Hacettepe.
GENÇLİK PROGRAMI EYLEM 1.3. GENÇLİK DEMOKRASİ PROJELERİ
Trees, Vectors, Iterators. ADT Abstract Data Type (ADT) vs implementation -Soyut Veri Türleri - Uygulamaları.
METU-CC ODTÜ AntiVirüs Sistemi ODTÜ Bilgi İşlem Daire Başkanlığı İbrahim ÇALIŞIR 3 Ekim 2003.
Veri Tabanı Yönetim Sistemleri 2 Ders 2 Oracle 11g Kurulumu
Veri Yapıları ve Algoritmaları ders_1
CensorNet Linux Internet Güvenlik Duvarı ve Kayıt Tutma Semineri
3 Boyutlu Uzay; 2 Üçgen Kesişir mi?
1- Site konuyu ince ayrıntılara ayırarak anlaşılmasını kolaylaştırmış. Örnekler üzerinden açıklayıcı şekilde yerleri gösterilmiş.
BİL542 PARALEL PROGRAMLAMA
Dijital Ölçütler.
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.
BİLGİSAYAR Donanım ve Yazılım.
MÜHENDİSLİK FAKÜLTESİNE HOŞGELDİNİZ
BİLGİSAYAR Donanım ve Yazılım.
Endüstri mühendisliği.
PROGRAM KONTROL KOMUTLARI 1. if koşulu 2. if else koşulu
KÜMELİ İŞLEM - BEOWULF Hande DOĞAN - Ersin ER
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
İleri Algoritma Analizi
NİŞANTAŞI ÜNİVERSİTESİ
Algoritmalar II Ders 16 Prim algoritması.
Chapter 6 Transform-and-Conquer
TEST.
Sunum transkripti:

Dengeli İkili Ağaç Kerem ERZURUMLU Hacettepe Üniversitesi Bilgisayar Bilimleri Mühendisliği

Soru İkili ağacı en hızlı şekilde “tam” dengelemek

Cevap En yaygın olarak kullanılan yöntem; –Dal derinlikleri temel alınarak dengeleme yapılır.

Örnek

Önemli Yordamlar int getHeight(BTree *leaf) { int lh,rh; if (leaf==NULL) return 0; lh=getHeight(leaf->left); rh=getHeight(leaf->right); if (lh>rh) return (lh+1); else return (rh+1); }

Önemli Yordamlar int balanceLeaf(BTree *leaf) { int rh,lh; rh=getHeight(leaf->right); lh=getHeight(leaf->left); if(abs(rh-lh)>=2){ if (rh>lh) rotateLeft(leaf); else rotateRight(leaf); balanceLeaf(leaf->left); balanceLeaf(leaf->right); } return 1; }

Önemli Yordamlar int balanceTree(BTree *root) { int rh,lh; if(root==NULL) return 0; balanceLeaf(leaf->right); balanceLeaf(leaf->left); return 1; }

Performans Test Ortamı –AMD 1000 –256Mb RAM –Takas bellek kapalı

Performans Her sayi için test 100 kere tekrarlandı ve sonuçların ortalaması alındı. Test süreleri en kötü ağaçtan en iyi ağacı oluşturma zamanı

Performans Rastgele 100 tamsayı –200x10e-6 saniye Rastgele tamsayı –5000x10e-6 saniye Rastgele tamsayı –1.1 saniye

Dengeli İkili Ağaç Seminer Sonu Katılımcılılarımıza teşekkür ederiz Kerem ERZURUMLU