Dengeli ikili arama ağacı uygulanması?

oy
10

Ben bir ikili arama ağacı uygulamış ve bunu kendi kendine dengeleme ağaç yapmak için kendi yerleştirme fonksiyonunda daha fazla işlevsellik eklemek istiyorum. Ben C # kodlama ediyorum.

Biri bana bu konuda iyi dersler veya bağlantılar önermek misiniz? Bazı aramalar yaptım ve bazı bağlantılar bulundu, ancak bunların hiçbiri yeterince açıklayıcı idi.

Teşekkürler.

Oluştur 24/07/2011 saat 09:25
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
13

(Bazı uyarılar ile de olsa) oldukça basittir olan pek çok karmaşıktır ki çoğu kendini dengeleyen arama ağaçları için algoritmalar ve diğerleri vardır.

Kitap Cormen, Leisserson, Rivest, ve Stein tarafından "Algoritmalar, Second Edition Giriş" algoritmaları için mükemmel bir giriştir ve kapakları kırmızı / siyah ağaçları çok iyi. Ayrıca algoritma ve veri yapıları üzerinde genel olarak büyük bir kitap.

Kullandığınız ilgileniyorsanız splay ağaçları son derece hızlı ve uygulamak aslında oldukça kolaydır, veri yapısı üzerinde orijinal kağıt çok erişilebilir. Bunun üzerine, tüm çalışma zamanı sınırların bir kanıtı içerir.

Treap sen nasıl uygulanacağı öğrendikten sonra oldukça kolay uygulanabilir basit bir randomize dengelenmiş ikili arama ağacı ağaç rotasyonlar . Ağaç rotasyonlar aynı zamanda splay ağaçlarda kullanılır ve böylece araştırmaya değer olabilir.

Için AVL ağaçları , bu ders iyi bir kaynak gibi görünüyor.

Bu yardımcı olur umarım!

Cevap 24/07/2011 saat 09:31
kaynak kullanıcı

oy
0

kontrol http://code.google.com/p/self-balancing-avl-tree/ , c # kendinden dengeleme avl ağaç uygular. artı o da concatenate ve split işlemleri uygular.

Cevap 12/07/2012 saat 23:41
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more