+/- ağaçlar B üzerinde T-ağaçlarının avantajları nelerdir?

oy
12

I tanımları araştırdılar T ağaçlar ve B / B + ağaç. Web'de kağıtları itibaren B-ağaçları disk sürücüleri ve önbelleğe bellek gibi, hiyerarşik bellekte daha iyi performans gösterdiğini anlıyoruz.

T ağaçlar / hatta düz bellek için kullanılan niçin ne anlayamıyorum mi?

Bunlar AVL ağaçlara alanı verimli bir alternatif olarak gösterilmektedir.

En kötü durumda, bir T ağacın tüm yaprak düğümleri sadece bir eleman içerir ve tüm iç düğümler tam yakındır izin verilen minimum miktarda içerir. Bu ayrılan alan ortalama sadece yarısı kullanılmaktadır anlamına gelir. Ben yanlış sürece, bu bir B-ağaç düğümleri tam yarısı B ağaçların en kötü durumda, aynı kullanılmasıdır.

Her iki ağaçlar düğümlerinde yerel anahtarlarını saklamak, ancak kullanım işaretçileri kayıtlarına başvurmak için varsayarsak, tek fark B-ağaçları dalların her biri için işaretçiler depolamak zorunda olmasıdır. Bu, genel olarak, anahtarların boyutuna bağlı olarak,% 50 ya da daha az yükü (T ağaçları üzerinde) kadar neden olur. Aslında, bu bir ana gösterici, düğümler gömülü kayıt, kayıt gömülü anahtarlar varsayarak, AVL ağaçlarda beklenen yük yakındır. Bu yerine, B-ağaçları kullanarak engeller beklenen verimlilik kazancı var mı?

T ağaçlar genellikle AVL ağaçları üzerine uygulanmaktadır. AVL ağaçları, B-ağaç daha dengelidir. Bu T-ağaçlarının uygulaması ile bağlanabilir mi?

Oluştur 29/01/2011 saat 15:43
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
3

Ben programlamak için bazı Pascal kod yazdım neden, yani size cevap yarısını kaplayan bir kişisel hikaye verebilir B + ağaç yaklaşık 18 yıl önce.

Benim hedef sistemi iki disk sürücüleri ile PC, ben kalıcı bellekte bir dizin saklamak zorunda kaldı ve ben üniversitede öğreniyordu daha iyi anlamak istedik. Ben ticari bir pakette, muhtemelen DBase III veya bazı Fox ürünün performansından çok memnun oldu, ben hatırlayamıyorum.

nasıl olsa: Ben bu işlemleri gerekli:

  • yukarı Bak
  • sokma
  • silme
  • sıradaki eşya
  • önceki madde

  • dizinin maksimum boyut bilinmiyordu

  • böylece veri diskinde bulunan zorunda
  • desteğine her erişim yüksek maliyeti vardı
  • bir bütün bloğu okumaya bir bayt okuma aynı mal

B + -ağaçları küçük yavaş PC gerçekten verileri üzerinden uçmak belirtti!

yapraklar iki ekstra işaretçileri vardı bu yüzden sıralı aramalar için, bir iki kat bağlantılı liste oluşturdu.

Cevap 11/02/2011 saat 23:49
kaynak kullanıcı

oy
2

Gerçekte fark kullandığınız sistemde yatmaktadır. üniversitede benim öğretmen bunu yorumladığı gibi: Sorunun bellek sıkıntısı yatıyor, ya hdd sıkıntısı içinde eğer hangi uygulama içinde kullandığınız hangi ağaç ve belirleyecektir. Büyük olasılıkla o B + ağaç olacak.

2direction kuyrukta ve döngü düşünce elemanlarına ihtiyaç ve aynı zamanda indeksi saklamak ve herhangi uygulamaların gerçek eksilerini ve dakika belirleyecek almak için birden çok yolu vardır bir yön sıralarla örneğin uygulamaların yüzlerce vardır, çünkü.

Cevap 25/02/2011 saat 09:02
kaynak kullanıcı

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