public void solYapraklar(Dugum dugum) { if (dugum != null) { solYapraklar(dugum.solDugum); setSolYaprakDugum(dugum.veri, solSayi); solSayi++; } }
public void sagYapraklar(Dugum dugum) { if (dugum != null) { sagYapraklar(dugum.sagDugum); setSagYaprakDugum(dugum.veri, sagSayi); sagSayi++; } }
public void preOrder(Dugum dugum) { if (dugum != null) { setDizi(dugum.veri, diziSayi); diziSayi++; preOrder(dugum.solDugum); preOrder(dugum.sagDugum); } }
public void postOrder(Dugum dugum) { if (dugum != null) { postOrder(dugum.solDugum); postOrder(dugum.sagDugum); setDizi(dugum.veri, diziSayi); diziSayi++; } }
private int enDusukDeger(Dugum dugum) { int minv = dugum.veri; while (dugum.solDugum != null) { minv = dugum.solDugum.veri; dugum = dugum.solDugum; } return(minv); }
public bool ekle(int deger) { Dugum before = null, after = this.Root; while (after != null) { before = after; if (deger < after.veri) { after = after.solDugum; } else if (deger > after.veri) { after = after.sagDugum; } else { return(false); } } Dugum newNode = new Dugum(); newNode.veri = deger; if (this.Root == null) { this.Root = newNode; } else { if (deger < before.veri) { before.solDugum = newNode; } else { before.sagDugum = newNode; } } return(true); }
public int getDugumDerece(Dugum dugum, int veri, int derece) { if (dugum == null) { return(0); } if (dugum.veri == veri) { return(derece); } int downlevel = getDugumDerece(dugum.solDugum, veri, derece + 1); if (downlevel != 0) { return(downlevel); } downlevel = getDugumDerece(dugum.sagDugum, veri, derece + 1); return(downlevel); }
public void yapraklarBul(Dugum dugum) { if (dugum == null) { return; } if (dugum.solDugum == null && dugum.sagDugum == null) { setYaprakDizi(yaprakSayi, dugum.veri); yaprakSayi++; } if (dugum.solDugum != null) { yapraklarBul(dugum.solDugum); } if (dugum.sagDugum != null) { yapraklarBul(dugum.sagDugum); } }
private Dugum sil(Dugum dugum, int anahtar) { if (dugum == null) { return(dugum); } if (anahtar < dugum.veri) { dugum.solDugum = sil(dugum.solDugum, anahtar); } else if (anahtar > dugum.veri) { dugum.sagDugum = sil(dugum.sagDugum, anahtar); } else { if (dugum.solDugum == null) { return(dugum.sagDugum); } else if (dugum.sagDugum == null) { return(dugum.solDugum); } dugum.veri = enDusukDeger(dugum.sagDugum); dugum.sagDugum = sil(dugum.sagDugum, dugum.veri); } return(dugum); }
private int getAgacYukseklik(Dugum dugum) { return(dugum == null ? 0 : Math.Max(getAgacYukseklik(dugum.solDugum), getAgacYukseklik(dugum.sagDugum)) + 1); }
public int getRoot(Dugum dugum) { return(dugum == null ? 0 : dugum.veri); }
public void sil(int deger) { this.Root = sil(this.Root, deger); }
public int getDerece(Dugum dugum, int veri) { return(getDugumDerece(dugum, veri, 1)); }