Class KokAgaci

java.lang.Object
net.zemberek.bilgi.kokler.KokAgaci

public class KokAgaci extends Object
Kök ağacı zemberek sisteminin temel veri taşıyıcılarından biridir. Kök sözlüğünden okunan tüm kökler bu ağaca yerleştirilirler. Ağacın oluşumundan AgacSozluk sınıfı sorumludur. Kök ağacı kompakt DAWG (Directed Acyclic Word Graph) benzeri bir yapıya sahiptir. Ağaca eklenen her kök harflerine göre bir ağaç oluşturacak şekilde yerleştirilir. Bir kökü bulmak için ağacın başından itibaren kökü oluşturan harfleri temsil eden düğümleri izlemek yeterlidir. Eğer bir kökü ararken erişmek istediğimiz harfe ait bir alt düğüme gidemiyorsak kök ağaçta yok demektir.

Ağacın bir özelliği de boşuna düğüm oluşturmamasıdır. Eğer bir kökün altında başka bir kök olmayacaksa tüm harfleri için ayrı ayrı değil, sadece gerektiği kadar düğüm oluşturulur.

Author:
MDA
  • Constructor Details

  • Method Details

    • getKokDugumu

      public KokDugumu getKokDugumu()
    • getAlfabe

      public Alfabe getAlfabe()
    • getNodeCount

      public int getNodeCount()
    • ekle

      public void ekle(String icerik, Kok kok)
      Verilen kök icerigini ağaca ekler.
      Parameters:
      icerik -
      kok -
    • bul

      public List<Kok> bul(String str)
      Aranan bir kök düğümünü bulur.
      Parameters:
      str -
      Returns:
      Aranan kök ve eş seslilerini taşıyan liste, bulunamazsa sifir uzunluklu liste.
    • toString

      public String toString()
      Overrides:
      toString in class Object